我正在使用TRAK API。
它说我们需要发送一个http请求,并将凭据作为正文,他告诉我一个方法是转到Hurl选择post,将地址添加为https://trak.addy.co/api/v1/auth/keys,然后单击参数中的添加正文,并将以下内容作为正文参数。
{
"email":"m@addy.co",
"password":"foo*bar!",
"name":"addy-dev"
}
这在HURL中有效,并返回API密钥。
但是当我通过php发送它的时候,它就不工作了。
$r = new HttpRequest('https://trak.addy.co/api/v1/auth/keys', HttpRequest::METH_POST);
$r->addPostFields(array('email' => 'm@addy.co', 'pass' => 'foo*bar!', 'name' => 'addy-dev'));
try {
echo $r->send()->getBody();
} catch (HttpException $ex) {
echo $ex;
}
我猜这是因为它发送的是参数而不是正文,对吗?
我如何在http请求中发送正文?
如果有人知道如何通过jQuery来做这件事,那么这将是有帮助的。
1条答案
按热度按时间voase2hg1#
看起来您需要使用将参数添加到请求的主体中。
只要接收的另一方会处理发送到正文中的参数,这应该可以工作,否则就不行。
您可能还希望通过添加以下行(不确定是否需要)以JSON格式发送请求。
EDIT:修正了addHeaders的语法错误。