Silakan baca komentar terlebih dahulu, jawaban ini sepertinya menarik kesimpulan yang salah dari sumber yang benar, perlu diedit.
Anda dapat menggunakan karakter ASCII yang dapat dicetak, dan tidak ada karakter khusus seperti ✰ (Yang bukan ASCII )
Tip : Anda dapat mengenkode apa saja di JSON.
Sunting : mungkin tidak terlihat jelas pada awalnya, pengkodean karakter yang ditentukan di tajuk hanya berlaku untuk isi respons, bukan untuk tajuk itu sendiri. (Karena itu akan menyebabkan masalah ayam - & - telur.)
Saya ingin merangkum semua definisi yang relevan sesuai spesifikasi yang ditautkan oleh Penchant.
message-header = field-name ":" [ field-value ]
field-name = token
field-value = *( field-content | LWS )
Jadi, kami mengejar nilai bidang .
LWS = [CRLF] 1*( SP | HT )
CRLF = CR LF
CR = <US-ASCII CR, carriage return (13)>
LF = <US-ASCII LF, linefeed (10)>
SP = <US-ASCII SP, space (32)>
HT = <US-ASCII HT, horizontal-tab (9)>
LWS adalah singkatan dari Linear White Space. Pada dasarnya, LWS adalah Spasi atau Tab, tetapi Anda dapat memecah nilai bidang Anda menjadi beberapa baris dengan memulai baris baru sebelum Spasi atau Tab.
Mari kita sederhanakan menjadi ini:
field-value = <any field-content or Space or Tab>
Sekarang kita mengejar konten lapangan .
field-content = <the OCTETs making up the field-value
and consisting of either *TEXT or combinations
of token, separators, and quoted-string>
OCTET = <any 8-bit sequence of data>
TEXT = <any OCTET except CTLs,
but including LWS>
CTL = <any US-ASCII control character
(octets 0 - 31) and DEL (127)>
token = 1*<any CHAR except CTLs or separators>
separators = "(" | ")" | "<" | ">" | "@"
| "," | ";" | ":" | "\" | <">
| "/" | "[" | "]" | "?" | "="
| "{" | "}" | SP | HT
TEXT adalah yang paling umum dan mencakup yang lainnya -jadi lupakan yang lainnya-.
Berikut adalah charset US-ASCII (= ASCII)
Seperti yang Anda lihat, semua karakter ASCII yang dapat dicetak diizinkan.