我试图隐藏一个卷曲来吞咽请求,这里是卷曲请求。
curl https://{subdomain}.zendesk.com/api/v2/tickets.json \
-d '{"ticket": {"subject": "My printer is on fire!", "comment": { "body": "The smoke is very colorful." }}}' \
-H "Content-Type: application/json" -v -u {email_address}:{password} -X POST
以下是JSON部分:
{
"ticket": {
"requester": {
"name": "The Customer",
"email": "thecustomer@domain.com"
},
"subject": "My printer is on fire!",
"comment": {
"body": "The smoke is very colorful."
}
}
}
$client = new GuzzleHttp\Client();
$res = $client->post('https://midnetworkshelp.zendesk.com/api/v2/tickets/tickets.json', [
'query' => [
'ticket' => ['subject' => 'My print is on Fire'], [
'comment' => [
'body' => 'The smoke is very colorful'] ], 'auth' => ['email', 'Password']]);
echo $res->getBody();
参考:
您最大的问题是您没有正确地转换curl请求。
$client = new GuzzleHttp\Client([
'base_url' => ['https://{subdomain}.zendesk.com/api/{version}/', [
'subdomain' => '<some subdomain name>',
'version' => 'v2',
],
'defaults' => [
'auth' => [ $username, $password],
'headers' => ['Content-Type' => 'application/json'], //only if all requests will be with json
],
'debug' => true, // only for debugging purposes
]);
如果选择记录请求和响应对象,还可以执行以下操作:
// You can use any PSR3 compliant logger in space of "null".
// Log the full request and response messages using echo() calls.
$client->getEmitter()->attach(new GuzzleHttp\Subscriber\Log\LogSubscriber(null, GuzzleHttp\Subscriber\Log\Formatter::DEBUG);
您的请求将简单地变成:
$json = '{"ticket": {"subject": "My printer is on fire!", "comment": { "body": "The smoke is very colorful." }}}';
$url = 'tickets/tickets.json';
$request = $client->createRequest('POST', $url, [
'body' => $json,
]);
$response = $client->send($request);
$json = '{"ticket": {"subject": "My printer is on fire!", "comment": { "body": "The smoke is very colorful." }}}';
$url = 'tickets/tickets.json';
$result = $client->post(, [
'body' => $json,
]);
编辑:在进一步阅读参考文献4之后,应该可以做以下几点:
$url = 'tickets/tickets.json';
$client = new GuzzleHttp\Client([
'base_url' => ['https://{subdomain}.zendesk.com/api/{version}/', [
'subdomain' => '<some subdomain name>',
'version' => 'v2',
],
'defaults' => [
'auth' => [ $username, $password],
],
'debug' => true, // only for debugging purposes
]);
$result = $client->post($url, [
'json' => $json, // Any PHP type that can be operated on by PHP’s json_encode() function.
]);
问题内容: 我想将Intent的Extras Bundle转换为JSONObject,以便可以将其传递给JavaScript。 有没有快速或最佳的方法来进行此转换?如果不是所有可能的捆绑包都能正常工作,那就没关系了。 问题答案: 您可以用来获取捆绑软件包含的密钥列表。然后,您可以遍历这些键,并将每个键值对添加到中: 请注意,这将需要您抓住一个。 编辑: 有人指出,以前的代码不能很好地处理和键入。如
问题内容: 我正在将Jersey用于REST WS,并且得到的响应为JSON。 我想将此响应转换为POJO。怎么做 ? 问题答案: 要在Java和JSON之间进行转换,有很多可供选择的API 。 您可以“手动”遍历JSON组件并提取值以填充Java对象,或者可以使用JSON到Java的绑定API来解决许多低级映射问题。
问题内容: 我试图将JSON输出转换为XML。不幸的是我得到这个错误: JSON根对象具有多个属性。根对象必须具有单个属性才能创建有效的XML文档。考虑指定DeserializeRootElementName。 这就是我到目前为止所创建的。 这是我的JSON输出: 我怎么解决这个问题? 问题答案: 尽管问题中提供的JSON并不完整,但您在顶层具有多个属性,如异常所示。您必须为其定义根以获取有效的X
问题内容: 我似乎找不到此问题的答案。如何在JavaScript中将URL参数字符串转换为JSON?我的意思是问是否有像这样的内置功能或可以完成这项工作的单线? 例: => 问题答案: 您可以创建一个将返回JSON对象的方法 演示:http://jsfiddle.net/jAGN5/
问题内容: 像这样转换JSON代码的最佳方法是什么: 在Java Map中,其中一个键为(field1,field2),而这些字段的值为(value1,value2)。 有任何想法吗?我应该使用Json-lib吗?或者,如果我编写自己的解析器会更好? 问题答案: 我希望您在开玩笑编写自己的解析器。:-) 对于这种简单的映射,http://json.org(java部分)中的大多数工具都可以使用。对
问题内容: 我正在使用json-rpc-1.0.jar。以下是我的代码。由于响应为JSON,因此我需要将InputStream对象转换为JSON。 我确实验证了从Zappos API获得的json响应。是有效的。 我得到以下提到的异常: 问题答案: 利用Jackson JSON解析器。 推荐- 杰克逊之家 您唯一需要做的是- 现在将包含JSON。