質問

http://asdf.com/something.doという形式のURL ?param1 = true?param2 = false 有効?

2番目とは思わない?有効なURLで許可されており、代わりにアンパサンド(<!> amp;)にする必要がありますが、http 1.1 rfcでこれについて何も見つけることができません。アイデアはありますか?

役に立ちましたか?

解決

使用するのは無効ですか?再び。 ?パラメータリストの開始を示す必要があります。 <!> amp;パラメーターを分離する必要があります。

RFC 3986 から:

URI = scheme ":" hier-part [ "?" query ] [ "#" fragment ]

RFC 1738 から:

  

HTTP URLの形式は次のとおりです。

http:// <host> : <port> / <path> ? <searchpart>
     

where <host>および<port>は、セクション3.1で説明されているとおりです。 :<port>の場合   省略され、ポートのデフォルトは80です。ユーザー名またはパスワードはありません。   許可された。 <path>はHTTPセレクターで、<searchpart>はクエリです   文字列。 <=>はオプションです。<=>およびその   先行する<!> quot;?<!> quot;。 <=>も<=>も存在しない場合、<!> quot; / <!> quot;   省略することもできます。

     

<=>および<=>コンポーネント内、<!> quot; / <!> quot;、<!> quot ;; <!> quot;、<!> quot;?<!> quot;は   予約済み。 <!> quot; / <!> quot;文字をHTTP内で使用して、   階層構造。

検索部分/クエリ部分について説明します

他のヒント

  

application / x-www-form-urlencoded

     

これはデフォルトのコンテンツタイプです。このコンテンツタイプで送信されるフォームは、次のようにエンコードする必要があります。

     
      
  1. コントロールの名前と値はエスケープされます。スペース文字は+に置き換えられ、次に予約文字は[RFC1738]セクション2.2で説明されているようにエスケープされます:英数字以外の文字は、文字のASCIIコードを表す%HH、パーセント記号、2桁の16進数に置き換えられます。改行は<!> quot; CR LF <!> quot;として表されます。ペア(つまり、%0D%0A)。
  2.   
  3. コントロールの名前/値は、ドキュメントに表示される順序でリストされています。名前は値と=で区切られ、名前と値のペアは互いに&で区切られます。
  4.   
     

<!>#8212; application / x-www-form- urlencoded

前述のように、再度使用することは無効です。ただし、?パラメータ値の一部としての文字は、%63としてエンコードできます(%20としてエンコードされるスペース文字のように)。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top