2

開発者アカウントをセットアップし、「カスタムアプリケーション」を使用してドキュメントに記載されているようにアクセストークンを作成し、コンソールでキー、ID、シークレットを提供しました。

正常に動作するなど、コンソール経由で行われたリクエストget_survey_list

ただし、curl などの他の http クライアントを試してみると、次のようになります。

{"status":3,"errmsg":"Expected object or value"}

カールコードは次のとおりです。

curl -H 'Authorization:bearer xxx' -H 'Content-Type: application/json' https://api.surveymonkey.net/v2/surveys/get_survey_list/?api_key=xxx --data-binary ''

私は他の方法(私のアプリケーションではhttpclient、poster)を試しましたが、常にこの結果が得られます。私のリクエストは、コンソール出力に表示されるリクエスト データとまったく同じように見えます。

機能する唯一のリクエストはuser/get_user_details.

誰でも助けることができますか?ありがとうゴードン

4

2 に答える 2

1

--data-binaryフラグを使用して特定のデータ フィールドを要求する必要があります。たとえば、私が望むなら:

"title","analysis_url","date_created","date_modified"

私のcurlステートメントは次のようになります:

curl -H 'Authorization:bearer xxx' -H 'Content-Type: application/json' https://api.surveymonkey.net/v2/surveys/get_survey_list/?api_key=xxx --data-binary '{"fields":["title","analysis_url","date_created","date_modified"]}'

(XXX を認証パラメータに置き換えてください)

詳細はこちらをご覧ください。このページには、curl ステートメントの完全な例も含まれています。

curl -H 'Authorization:bearer XXXYYYZZZ' -H 'Content-Type: application/json' https://api.surveymonkey.net/v2/surveys/get_survey_list/?api_key=your_api_key --data-binary '{"fields":["title","analysis_url","date_created","date_modified"], "start_date":"2013-02-02 00:00:00", "end_date":"2013-04-12 22:43:01", "order_asc":false, "title":"test3"}'
于 2014-05-28T10:59:03.230 に答える
0

get_survey_detailsパラメーターなしで呼び出すことができますが、有効な JSON オブジェクトを POST する必要があります。Miles がコメントしたように、単純な空の JSON オブジェクトで十分です。{}

「Expected object or value」というエラー メッセージは、POST データから JSON オブジェクトをデコードできなかったことを示しています。

于 2014-05-29T16:20:06.670 に答える