Pebble.js ajax请求与帖子数据。请求中没有数据

时间:2014-11-13 09:55:13

标签: javascript php ajax pebble-js

我刚开始用pebble.js填充原型。我必须连接到服务器并将用户数据从pebble(登录信息)发送到服务器进行握手,并将数据从服务器发送回卵石。我正在使用pebble.js,因为它很容易进行原型设计。

现在我正在使用ajax库(http://developer.getpebble.com/docs/pebblejs/#ajax)来设置连接。我有以下代码:

ajax(
{
  url: URL,
  method: 'post',
  type: 'json',
  data: {
    auth : 'test'
  }
},
function(data) {
  // Success!
  console.log(JSON.stringify(data));
},
function(error) {
  // Failure!
  console.log('no response');
}
);

在服务器上的PHP中,我通过apache_request_headers()获取完整的头信息;并使用echo json_encode(apache_request_headers())将其发送到卵石;

这会产生console.log(JSON.stringify(data))

的输出
{"Host":"192.168.0.113","Content-Type":"application/json","Accept":"*/*","Connection":"keep-alive","Cookie":"v2ci_session=55MmpPmzb2cvBWiq3VNgneHexYzBtIFr46Ycb94s2KNKwmnz%2FStJq3euLpUSuBmbsKmKou2915ZR5Cp%2FA7xXnK7FO5EHcnem3Xi6gLpAJPXCF51sQxVQn%2BP1fAmlDqEzSnZEVkbhAO3LkZzALdnjzUc2SPyRCdVx70xAnkohQVH%2BuaU7qZtlCtYwJ7MYQqwa1%2BXuPfw9Vb7vgduYqoWMB%2FVIab5uDPe1KnIxZ08reU1PHVTWXcXXyGCEwmYfCYDkXZSIH%2FcnM%2B4oKAu3kEalGX9jxEVvC6VKz4mAdg7O5Q4Ns%2BEKyTR5VqrpisfZcY2VWOX8ipjCuYMTTosY9Lm%2F0qSpU4P%2B2ObuXCbsJIYviK2EsQqj6%2BWNo0L3DEK6L2N7","User-Agent":"PebbleApp/20141016231206 CFNetwork/711.1.12 Darwin/14.0.0","Accept-Language":"nl-nl","Accept-Encoding":"gzip, deflate","Content-Length":"6"}

正如您所见,请求中没有数据发送。

任何人都知道为什么没有数据与请求一起发送?

解决

我能够通过pebblejs的github解决它。对于有同样问题的人: 当'type'设置为'json'时,ajax库不仅期望响应为json,而且发布的数据也将发布为json。如果要在PHP中使用数组收集此数据,请使用以下代码:

json_decode(file_get_contents('php://input'), true); 

0 个答案:

没有答案