1
根據RFC,可以在單詞和分隔符之間設置* LWS。但是,如果您查看特定的ABNF以匹配Accept-Language字段,則不允許在;
字符周圍留出空白。「fr,en; q = 0.3」是一個有效的Accept-Language值嗎?
這裏是確切LWS specification:
隱含* LWS:通過本說明書中描述的語法是基於字 。除非另有說明,否則在任何兩個相鄰字(標記或引用字符串), 之間以及相鄰字和分隔符之間可以包含線性空白(LWS) ,而不會更改字段的解釋。至少有一個分隔符(LWS和/或 分隔符)必須存在於任何兩個標記之間(下面定義的 「標記」),因爲它們否則會被解釋爲單個標記 。
這裏是ABNF grammar:
Accept-Language = "Accept-Language" ":"
1#(language-range [ ";" "q" "=" qvalue ])
language-range = ((1*8ALPHA *("-" 1*8ALPHA)) | "*")