Plaid API php cURL不发送帖子数据

时间:2016-07-19 00:11:33

标签: php api curl plaid

我正在尝试将以下cURL翻译为php cURL:

$ curl -X POST https://tartan.plaid.com/exchange_token \

  

-d client_id =“$ plaid_client_id”\     -d secret =“$ plaid_secret”\     -d public_token =“$ public_token_from_plaid_link_module”

使用此代码:

    $data = array(
        "cliend_id"=>"test_id",
        "secret"=>"test_secret",
        "public_token"=>"test,fidelity,connected");
    $string = http_build_query($data);

    echo $string;

    //initialize session
    $ch=curl_init("https://tartan.plaid.com/exchange_token");

    //set options
    curl_setopt($ch, CURLOPT_POST, true);
    curl_setopt($ch, CURLOPT_POSTFIELDS, $string);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);

    //execute session
    $exchangeToken = curl_exec($ch);
    echo $exchangeToken;
    //close session
    curl_close($ch);

我收到了这个回复:

cliend_id = test_id& secret = test_secret& public_token = test%2Cfidelity%2Cconnected {“code”:1100,“message”:“client_id missing”,“resolve”:“包含您的客户ID,以便我们知道您是谁。 “ }

我不确定我的格式是什么问题导致格子识别帖子的client_id部分。如需进一步参考,请在下面详细介绍。

以下内容取自格子网站,可通过搜索“plaid api quickstart”找到:

参考 / exchange_token端点

/ exchange_token端点在格子呢和生产环境中都可用。 方法端点必需参数可选参数 POST / exchange_token client_id,secret,public_token account_id

/ exchange_token端点已经集成到plaid-node,plaid-go,plaid-ruby和plaid-python客户端库中。即将推出对plaid-java的支持。

如果您正在使用尚不支持/ exchange_token端点的库,则可以简单地发出标准HTTP请求:

$ curl -X POST https://tartan.plaid.com/exchange_token \

  

-d client_id =“$ plaid_client_id”\     -d secret =“$ plaid_secret”\     -d public_token =“$ public_token_from_plaid_link_module”

对于有效请求,API将返回类似于:

的JSON响应

{   “access_token”:“foobar_plaid_access_token” }

1 个答案:

答案 0 :(得分:2)

问题是您发送的是cliend_id,但服务器需要client_id

$data = array(
    "client_id"=>"test_id", // Use client_id instead of cliend_id
    "secret"=>"test_secret",
    "public_token"=>"test,fidelity,connected");