Delphi XE5 + CIS 7.8 for XE5、POST で以下のような中国語のフォームフィールド値を使用する場合
clHttpRequest.AddFormField('Status', '待处理');
itAutoStatus := '待处理' ;
mmo1.Lines.Add( ' 汉字为 : <'+ itAutoStatus +'>' ) ; // <待处理>
a2us := AnsiToUtf8(itAutoStatus) ;
mmo1.Lines.Add( ' 汉字AnsiToUtf8为 : <' + a2us +'>' ) ; // <待处理>
gbs := HTTPEncode(itAutoStatus);
mmo1.Lines.Add( ' 汉字HTTPEncode为 : <' + gbs +'>' ) ; // <%B4%FD%B4%A6%C0%ED>
utfs := HTTPEncode(AnsiToUtf8(itAutoStatus));
mmo1.Lines.Add( ' 汉字HTTPEncode(AnsiToUtf8())为 : <' + utfs +'>' ) ; // <%E5%BE%85%E5%A4%84%E7%90%86>
IE8 では、右の生ストリームは次のとおりです: pageNo=1&total=&SortField=&SortType=&PromTitle=&C1=&Status= %E5%BE%85%E5%A4%84%E7%90%86
clHttpRequest.AddFormField('Status', '待处理');
CIS のデフォルトの生ストリームは次のとおりです: pageNo=1&total=&SortField=&SortType=&PromTitle=&C1=&Status= %B4%FD%B4%A6%C0%ED
clHttpRequest.AddFormField('Status', HTTPEncode(AnsiToUtf8('待处理')));
現在、CIS の生ストリームは次のとおりです。
clHttpRequest.AddFormField は文字列 '25' を追加するため、Web サーバーはデータベース クエリの結果を返しません。
IE8 のような raw ストリームを作成したいのですが、これを修正するにはどうすればよいですか? ありがとう!!!