問題タブ [put]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
729 参照

get - S3-結果整合性と複数のクライアント

オブジェクトをS3(US East)に配置し、それをGETできるようになるまでオブジェクトのメタデータを繰り返し要求した場合、その時点で、他のすべてのクライアントがオブジェクトをGETできることが保証されますか?または、別のクライアントの要求が、まだPUTを登録していない別のサーバーにルーティングされている可能性はありますか?特に1つのクライアントがGETできた場合の結果を理解しようとしています。

0 投票する
1 に答える
9520 参照

iis-7 - Windows認証を使用してASHXハンドラーに対してIIS7.5でPUTを有効にする

.ashx汎用ハンドラーにhttpPUTを使用するASP.NET(.NET 4)Webサイトがあります。PUT呼び出しは、Silverlightフロントエンドから発信されます。すべてが私のローカルマシン(Cassini Webサーバー)上のVS2010で動作します。

次に、IIS7.5 Win Server2008R2ボックスに展開しました。

Silverlight / Webサイトは問題ありませんが、.ashxハンドラーへのPUT呼び出しは、Windowsログインプロンプトで処理されます。
これはローカルイントラネットであるため、有効な認証はWindows認証(NTLMおよびネゴシエートプロバイダーを使用)のみです。

それから私はこれを読みました:http://blogs.msdn.com/b/joseph_fultz/archive/2009/07/23/enabling-the-put-verb-with-handlers-and-iis-7-0.aspx

私は彼の提案に従い、.ashxハンドラーを介してPUT呼び出しを行うことができるようになりました。問題は、WebサーバーのAdministratorsグループのメンバーだけがこれを実行できることです。他の誰もできません。Windowsのログインプロンプトが表示されます。

これが何であるかについて何か考えはありますか?

会社の全員にWebサーバーの管理者権限を与えることはできません。彼らは間違いなく私の片方の手を切り落とし、私の前でその手を食べて、それから私にドアを見せてくれたでしょう。

0 投票する
2 に答える
535 参照

http - OpenRasta は PUT でエンティティを適切に逆シリアル化できません

OpenRasta ハンドラーで HTTP PUT を処理しているときに、非常に奇妙な動作が発生します。ハンドラー メソッドのシグネチャは次のようになります。

そして、ここに関連するResourceSpace構成があります:

CustomerForm次のようになります。

ContactInfo次のようになります。

私の問題はCustomerForm、サーバーに PUT するときに、OpenRasta が適切にデシリアライズできないことです。クライアントから正常に送信されますが、ContactInfoセットを使用してデシリアライズします。必要な XML が実際にそこにあることを確認するためにnullIRequest.Entity.Stream

メソッドで受信しIRequest.Entity.Streamた逆シリアル化CustomerFormされたオブジェクトが含まれていないときに、必要なデータをどのように含めることができますか? Put(CustomerForm)シリアライゼーションとデシリアライゼーションが完全に機能することを確認するテストがありPost(CustomerForm)、まったく同じハンドラーでも機能します。に設定されCustomerFormているのは、HTTP メソッドが PUT のときだけです。ContactInfonull

私は OpenRasta からのデバッグ出力を徹底的に読みました。

私が見つけた唯一の奇妙な点は、このステップの直後にa が aMissingMethodExceptionとしてスローされる(ただしバブルアップしない) ことですが、そのスタック トレースが非常に短いため、何が問題なのかわかりません。FirstChanceException

なぜ a がスローされているのか、イベントにMissingMethodExceptionサブスクライブしないとバブルしないのかはわかりませんが、正しく逆シリアル化されていない理由に関連している可能性があります。ただし、HTTP POST では正しくデシリアライズされるため、疑問があります。AppDomain.FirstChanceExceptionCustomerForm

アイデア?

0 投票する
2 に答える
566 参照

file - YUI3 を使用してファイルを RESTful PUT URL にアップロードする

YUI3 を使用してファイルを RESTful PUT URL にアップロードしようとしていますが、io の構成でアップロードを true に設定すると、ファイルは PUT ではなく POST として送信されます。構成でアップロード設定を削除すると、ファイル名を取得するだけですが、PUT URL に移動します。ファイルのアップロードで PUT を使用できますか? これを行う別の方法はありますか?これは、YUI3 の失敗/障害か、むしろ私の使用によるものだと思います。

ここで何か助けていただければ幸いです。

また、javascript を使用してファイルの内容を読み取り、それを PUT データにプッシュする方法に関するリソースを見つけようとしましたが、それについて何も見つけられないようです。それが可能かどうか誰にもわかりますか?

乾杯、アンディ。

0 投票する
2 に答える
718 参照

rest - REST - GET は POST/PUT とは異なる結果を返します

このプロジェクトでは、書籍の構造 (XML、JSON など) を POST または PUT リクエストで送信することにより、書籍を追加できます。たとえば、XML では、本の構造は次のようになります (単純化されています)。

この書籍がバックエンド データベースに挿入されると、作成日、書籍を送信したユーザー ID、識別子など、いくつかの自動生成されたプロパティが自動的に追加されます。

GET を使用してブックを取得すると、次の追加のプロパティがブック定義に含まれます。

これは基本的に、新規/編集された本 (= クライアントからサーバーへ) の XML スキームが、取得された本 (= サーバーからクライアントへ) とは異なることを意味します。これは物事を混乱させます。

これらの追加のプロパティを別の URI で使用できるようにすることもできます。たとえば、次のようになります。

このアプローチの欠点は、すべてのデータを取得するために 2 つの別個の要求が必要になることです。

この矛盾をどのように解決しますか?

0 投票する
15 に答える
99721 参照

iis - IIS 7.5 + RESTFul サービスの PUT および DELETE を有効化、拡張なし

IIS 7.5 が POST および PUT 要求を処理する方法を理解しようとしています。

OpenRasta フレームワークを使用して RESTful サービスを作成しています。POST 操作は問題なく機能しますが、同じ URL に対する PUT 操作は機能しません。以下のようなエラーを返します

URLは「http://localhost/MyService/Resource.Something.manifest」に続くこのようなものです

Visual Studio 開発 IIS でも同じ設定で問題なく動作します。

解決

基本的に、デフォルトの ExtensionlessUrlHandler は PUT および DELETE 動詞を受け入れません。それらを追加するだけです。

0 投票する
1 に答える
386 参照

android - Java/Android で HTTP PUT を使用してファイルを作成した場合、ファイルの作成日/変更日はありません

HTTP PUT を使用してワイヤレス デバイスに読み書きする Android 用のアプリを開発しています。

HTTP PUT によって作成されるファイルの作成/変更日時属性を設定する方法はありますか?現時点では、ファイルは正常に作成されますが、属性 (作成日時、変更日時.

コードスニペットが必要な場合はお知らせください(何が役立つかわかりません)

これはデバイスのフォールバックでしょうか。つまり、デバイスはこれらの属性をファイルに追加する責任がありますか?

ネットを検索してみましたが、この問題を 1 行または数語で説明するのは困難です :)

前もって感謝します。

編集: 明確にするために、私が書き込もうとしているファイルは既に存在するため、HTTP PUT は単純にそれをオーバーライドしています (単純なテキスト ファイル)。そして、このファイルに書き込まれる BYTEARRAY エンティティを渡すだけです。しかし、このプロセスでどういうわけか、ファイル属性が失われています。

編集: 以下は、uploadFile コード スニペットです。プライベートボイドアップロードファイル(文字列データ){

0 投票する
3 に答える
23808 参照

php - サーバー側でPHPRESTAPI PUTデータにアクセスするにはどうすればよいですか?

- 質問 -

私はRESTAPIを使い始めたばかりで、かなり混乱しています。

これは、私のPHPcRULクライアント側がPUTに対してどのように見えるかです。

サーバーを見ると、$ _ SERVER ['REQUEST_METHOD']にPUTが表示されていますが、質問は、CURLOPT_POSTFIELDSで送信した$dataを取得する方法です。

私がする必要があるのは、PUTリクエストで送信された$dataを次の行に取得することだけです。好き

私はこのトピックについて非常に多くの混乱を見てきましたので、それは私に頭痛の種を与えています。phpクライアント側ではとても簡単に思えますが、phpサーバー側で機能している答えは誰にもありません。

助けてくれてありがとう!

-回答(ヘルプと宿題の後)-

私は新しいので、8時間後まで自分の質問に答えることができません...奇妙な:)

さて、ここで素晴らしい人々と仕事をした後、私たちは答えに出くわしたと言わなければなりません。私はそれがとても簡単であると同時にそれが混乱していたことで自分自身を蹴っています。

最初の変更(上記)では、$ dataの周りにhttp_build_query()を追加する必要がありました。これにより、データが配列からURLに適した文字列になりました。

次は追加しなければなりませんでした。

これで、$put['data']のようなことができます。

PaulPROが上記で示した答えは、file_get_contents()がより少ない行で行ったのと同じ方法でデータを取得するために機能します。別のサイトで見たhttp_build_query()の欠如が影響を及ぼした場所で、データを解析する方法を見つけようとして立ち往生しました。

これがすべての仕組みです。

  1. データは通常の配列に入れられます。
  2. http_build_query()は、それをほぼGETのような文字列に変換します。
  3. file_get_contents()は、それをクライアントからサーバーに転送します。
  4. 次に、parse_str()はそれを配列に戻します。

PUTを使用してファイルを送信することについて多くのメッセージが表示されます。これがどのように機能するかはわかりますが、このRESTプロセス全体で読んだことから、PUTはデータを更新し、postはデータを作成するということでした。多分私は間違っています。私は何かが足りないのですか?

0 投票する
1 に答える
1279 参照

django - PUT で OAuth 認証に失敗しました

プロジェクト内でOAuthを使用しています。しかし、認証の問題が発生しました。

メソッド「POST」ではOauthの認証機構をパスできるが、メソッド「PUT」ではパスできないということです。POST リクエストと PUT リクエストの唯一の違いはメソッド タイプです。本文とヘッダーは同じです。私が使用したリクエストは次のとおりです。

役職

置く

クライアントは OAuth クライアントです。

サーバーから返されるエラー メッセージは次のとおりです。

ここに画像の説明を入力

参考: 401 Unauthorized

403 Forbidden に似ていますが、特に認証が可能であるが、失敗したか、まだ提供されていない場合に使用します。

私はdjangoフレームワークを使用して開発しています。

リクエスト方法は以下の通りです。

誰にもアイデアがありますか?

0 投票する
1 に答える
3872 参照

java - Android、HttpURLConnection、PUT、およびオーセンティケーター

また、以前にAuthenticatorを次のように設定しました。

正しいログイン情報を入力しましたが、サーバーが401コードで応答します。(ただし、同様の GET 要求が機能します。) その上getPasswordAuthentication()、ストリームへの接続と書き込みのプロセスでメソッドが呼び出されていません。(入れたから分かるLog.v("app", "password here")。)

何故ですか?