请保存我的堆栈溢出.. 我祈祷有人使用 API 注册了参与者(并提交了自定义问题的答案)。
好的,首先,这是创建注册人的文档:
POST https://api.citrixonline.com/G2W/rest/organizers/73563532324/webinars/89... HTTP/1.1
Accept: application/json
Accept: application/vnd.citrix.g2wapi-v1.1+json
Content-Type: application/json
Authorization: OAuth oauth_token={oauthToken}
{
"firstName":"Saumil",
"lastName":"Jhaveri",
"email":"test@test.com",
"address":"650+Townsend+St,+St.+325",
"city":"San+Francisco",
"state":"California",
"zipCode":"94103",
"country":"United+States",
"phone":"3123751884",
"industry":"Accounting",
"organization":"Citrix",
"jobTitle":"Software+Engineer",
"purchasingTimeFrame":"13+months",
"roleInPurchaseProcess":"Decision+Maker",
"numberOfEmployees":"120",
"questionsAndComments":"No+Comments!",
"responses":[
{
"questionKey":152,
"responseText":"Fantastic!"
}, {
"questionKey":151,
"answerKey":152
}
]
}
因此,正如您从上面的 json rest 示例中看到的那样,REST 主体需要是一个数组,用于存储“正常”值,例如姓名、电子邮件等……
如果您查看示例底部附近,您会在该数组中看到一个数组,称为响应。
此数组包含自定义问题 ID 和用户响应的数组。
那么当只有一个自定义问题时会发生什么?
我努力了:
array('firstName' => $fname, 'lastName' => $lname, 'email' => $em,
'responses' => array('questionKey' => 300000000000042400, 'responseText' => $custom));
并且还尝试了(即使只有一个问题,也尝试了一组数组):
array('firstName' => $fname, 'lastName' => $lname, 'email' => $em,
'responses' => array(array('questionKey' => 300000000000042400, 'responseText' => $custom)));
如果我对我的数据运行 json_encode,这是输出
{
"firstName":"Ellis",
"lastName":"Ryan",
"email":"ryanthecloser@gmail.com",
"responses":[
{
"questionKey":3.0e+17,
"responseText":"http:\/\/facebook.com\/doubleyourlikes"
}
]
}
当我输入这个问题时,我想我看到了这个问题......我的 json 数据(更具体地说是 questionkey)正在转换为科学记数法......我尝试将 questionKey 作为字符串提交,但这不起作用......
我希望科学记数法是问题所在。任何人都知道如何在 php 中制作这么大的数字:300000000000042400
并且能够在没有数字转换的情况下进行 encode_json 吗?或者,如果有人使用 api 成功获得了为注册人显示的自定义问题回复,请告诉我!
提前致谢!