预期的对象或价值

时间:2014-05-28 10:24:08

标签: surveymonkey

我已经设置了一个开发者帐户,并使用“自定义应用程序”创建了访问令牌,如文档中所述,并在控制台中提供密钥,ID和密码。

通过控制台发出的请求(例如get_survey_list正常工作。

但是,如果我尝试任何其他像httpl这样的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,海报,在我的应用中)我总是得到这个结果。 我的请求看起来与控制台输出中显示的请求数据完全相同。

唯一有效的请求是user/get_user_details

有人可以帮忙吗? 谢谢戈登

2 个答案:

答案 0 :(得分:1)

您必须使用--data-binary标记请求某些数据字段。例如,如果我想:

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

我的卷曲声明如下:

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)

阅读更多详情here - 该页面还包含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"}'

答案 1 :(得分:0)

可以使用无参数调用

get_survey_details,但仍需要有效的JSON对象进行POST。正如Miles评论的那样,一个简单的空JSON对象就足够了:{}

您收到的错误消息“预期对象或值”表示无法从POST数据中解码JSON对象。