У меня есть вопрос о токене на предъявителя . Я пытаюсь выяснить, какие символы разрешены в токене при размещении в заголовке Authorization: OAuth ....... Вот что говорит спецификация
Authorization: OAuth ......
учетные данные = "OAuth2" RWS токен доступа [RWS 1 # auth-param] access-token = 1 * (quoted-char / <"> ) quoted-char = "!" / "#" / "$" / "%" / "&" / "'" / "(" / ")" / "*" / "+" / "-" / "." / "/" / DIGIT / ":" / "<" / "=" / ">" / "?" / "@" / АЛЬФА / "[" / "]" / "^" / "_" / "` "/" {"/" | " / "}" / "~" / "\" / "," / ";"
учетные данные = "OAuth2" RWS токен доступа [RWS 1 # auth-param] access-token = 1 * (quoted-char / <"> )
quoted-char = "!" / "#" / "$" / "%" / "&" / "'" / "(" / ")" / "*" / "+" / "-" / "." / "/" / DIGIT / ":" / "<" / "=" / ">" / "?" / "@" / АЛЬФА / "[" / "]" / "^" / "_" / "` "/" {"/" | " / "}" / "~" / "\" / "," / ";"
Я не уверен, как это читать. Я новичок в чтении RFC, поэтому, если кто-то сможет это объяснить, я буду признателен
Похоже, что это расширенный BNF из спецификации HTTP / 1.1 (RFC2616):
http://www.rfc2616.com/#2.1
Вы можете просто использовать кодирование Base64.
Он не использует некоторые символы (например, "!", "#" ..) в BNF.
Если выхочу знать все разрешенные символы,
"!"/ "#" / "$" / "%" означает, что все эти символы ("!", "#", "$", "%") разрешены.