0

我所做的

我真的对以下内容感到困惑。

  • 我通过 Exact Online oAuth2 登录(有效)
  • 我被重定向到设置的重定向网址(有效)
  • 现在,我正在做一个 POST 请求来创建一个 CRM 帐户

https://start.exactonline.com/api/v1/1645882/crm/Accounts

带标题:

  • 授权:不记名MY_TOKEN
  • 内容类型:应用程序/json

使用 json 数据:

{
    "Name": "James Fellows",
    "Code": "JF"
}

代码(简化)

$this->client->request('POST', 'https://start.exactonline.com/api/v1/1645882/crm/Accounts', ['headers' => ['Authorization' => 'Bearer MY_TOKEN']], ['json' => json_encode(['Name' => 'James Fellows', 'Code' => 'JF'])]);

问题

而现在的问题。我总是收到这个错误:

<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<error xmlns="http://schemas.microsoft.com/ado/2007/08/dataservices/metadata">\r\n
    <code></code>
    <message xml:lang="">Error processing request stream. JSON text specified is not valid.
</message>
</error>

文档

我使用了以下 api 文档:

4

2 回答 2

1

json_encode()如果您使用json选项,请不要使用您的数据。此选项接受一个数组并在内部自动对其进行编码。

于 2017-04-02T23:20:25.010 回答
0

您应该省略该ID字段。该字段将自动填充。

您的 JSON 格式也存在一些问题(具体引用)。这个应该做:

{ Code : 'JF'
, Name : 'Jeff Fellows'
}
于 2017-03-31T15:31:28.290 回答