79

サーバーに対して PATCH 呼び出しを行おうとしています。次のコマンドを使用しています。

curl --data status=closed -X PATCH https://api.viafoura.com/v2/dev.viafoura.com/pages/7000000043515 

これは、PATCH 要求を送信する正しい方法ですか? ステータス パラメータが設定されていないというエラーが表示されます。--data は POST リクエスト専用であると推測しているため、サーバーはステータスパラメーターを見つけられません。

これは応答です(参考までに):

{"http_status":400,"error":"Parameter validation errors","validation_errors":{"status":{"error":"Request missing status parameter."}}}

このサービスに関するドキュメントは、こちらにあります

4

6 に答える 6

116

これは、使用する必要がある形式です。

curl --request PATCH https://api.viafoura.com/v2/dev.viafoura.com/pages/7000000043515?status=closed

その API は、statusパラメーターを PATCH 本体の一部ではなく、URL のクエリ パラメーターとして使用する必要があるようです。

この時点で、サーバーは「ページ設定を変更するにはログインする必要があります」という 401 エラーを返します。最初に次のような方法でログインする必要があると仮定します。

curl --request POST "https://api.viafoura.com/v2/dev.viafoura.com/users/login?password=TeNn!sNum8er1&email=novak@example.com"

その例では、ドキュメントの資格情報を使用しました。これは開発サーバーで機能すると考えましたが、現在「パスワードが正しくありません」というエラーが返されます。

ただし、有効な資格情報を持っている場合は、PATCH 要求の認証に使用できるセッション Cookie を取得する必要があります。

于 2013-05-08T16:19:44.050 に答える