2

ServiceStack サービスを構築する際、HttpResult がチャンク化されたエンコーディング応答を返すことを除いて、応答がほとんど同じであることに気付きました。

次のように HttpResult オブジェクトを使用する場合:

return new HttpResult("0", ContentType.PlainText, HttpStatusCode.OK);

Fiddler で次のような応答が表示されます。

HTTP/1.1 200 OK
Cache-Control: private
Transfer-Encoding: chunked
Content-Type: text/plain
Server: Microsoft-IIS/8.0
X-Powered-By: ServiceStack/3.954 Win32NT/.NET
X-Powered-By: ASP.NET
Date: Thu, 20 Jun 2013 13:33:17 GMT

ただし、次のように Response プロパティを使用する場合:

Response.ContentType = ContentType.PlainText;
Response.StatusCode = (int) HttpStatusCode.OK;
return "1";

Fiddler で次のような応答が表示されます。

HTTP/1.1 200 OK
Cache-Control: private
Content-Type: text/plain; charset=utf-8
Server: Microsoft-IIS/8.0
X-Powered-By: ServiceStack/3.954 Win32NT/.NET
X-Powered-By: ASP.NET
Date: Thu, 20 Jun 2013 14:38:39 GMT
Content-Length: 1

HttpResultはるかにきれいに見えるバージョンを使用したいと思いますが、エンコードしないようにする必要があります。responseBody オブジェクトを追加するたびに、応答をチャンクしているように見えます。それが取り除かれると、エンコーディングは削除されます。ただし、を明示的AllowsPartialResponseに false に設定しても、これは修正されません。

4

1 に答える 1

1

テストでカバーされた正しい動作でプルリクエストを送信すると、非常に迅速にマージされます。

于 2013-08-09T20:19:53.787 に答える