1

私の開発者は、次のように自分のWebサービスに画像をPOSTしようとしています。

http://consec.dev.domain.com/Services/ActivityService.svc/SubmitImage?userId=8D428BF6-51F0-43F6-947D-7E19A6A7F4BD&fileName=feels-bad.png&fileContent=iVBORw0KGgoAAAANSUhEUgAAAAUAAAAFCAYAAACNbyblAAAAHElEQVQI12P4//8/w38GIAXDIBKE0DHxgljNBAAO9TXL0Y4OHwAAAABJRU5ErkJggg==

これはbase64でエンコードされた画像です(これはたまたま赤い点ですが、使用する画像ははるかに大きいです)

彼がそれを投稿しようとすると、彼は以下を取得します:

HTTP Error 414. The request URL is too long.

私のIIS構成が間違っているので、彼は私にそれを教えてくれます。私は彼にそのコードを伝えています。誰かがこれに光を当てたり、答えを見つけ始める方向に私たちを向けたりすることはできますか?ありがとうございました

4

4 に答える 4

2

URLにデータを入れないPOSTで、投稿本文を利用して送信してください。大量のデータを送信する唯一の方法です。

于 2013-03-09T19:18:26.577 に答える
1

クエリ文字列には制限があります。クエリ文字列の可能な最大長はどれくらいですか?を参照してください。

リクエストの本文で、投稿データを介してファイルの内容を渡す必要があります。

于 2013-03-09T19:20:28.123 に答える
0

彼のコードは間違っています。これが、HTTP がPOSTリクエストをサポートする理由です。

POSTリクエストを使用して、URL にデータを挿入することもできます。適切POSTに行うには、投稿する場所を定義する URL を作成し、必要なデータをPOSTリクエストの本文に入れます。

GET の例:

GET /some/place.php?var1=value

投稿の例:

POST /some/place.php

var1=value

ただし、これを行うことは有効です。

POST /some/place.php?var1=value

var2=value2

(これらの例はわかりやすくするために省略されています。いくつかのヘッダーも で送信する必要がありますPOST)

于 2013-03-09T19:20:51.660 に答える
0

まず、post http リクエストではなく get です。第二に、エラーは webserver による returnef です。しかし、それは悪いデザインですか?実際には、構築されたクリック可能な取得 URL よりもポストを使用してフィールドを送信するフォーム ボタンである必要があります。

于 2013-03-09T19:23:45.793 に答える