1

ヒップチャット ルームへのカール通知を作成しようとしています。生成される通知トークンはそのルーム専用です。

curl -d '{"color":"green","message":"My first notification
(yey)","notify":false,"message_format":"text"}' -H 'Content-Type: 
application/json' <My URL and TOKEN GO HERE>

私のコード:

<?php

  $payload = array("message"=>"testing");
  print_r($payload);
  $json = json_encode($payload,true);
  $curl = curl_init();
  curl_setopt ($curl, CURLOPT_URL,     "my url with token"
  curl_setopt($curl, CURLOPT_CUSTOMREQUEST, "POST");
  curl_setopt($curl, CURLOPT_POSTFIELDS, $json);
  $ch = curl_exec ($curl);
  curl_close ($curl);

  print_r($ch);

?>

結果としてこれが得られます:

Array
(
     [message] => testing
)
{
"error": {
"code": 400,
 "field": "message",
 "message": "Required field 'message' is missing",
 "type": "Bad Request",
 "validation": "optional",
 "value": null
 }

https://github.com/hipchat/hipchat-phphttps://github.com/rcrowe/Hippyを試しましたが、管理 API トークンが必要です。

ありがとう、IJC

4

1 に答える 1

2

Content-Typeコマンドラインで行ったのと同じように、curl リクエストでヘッダーを送信する必要があります。送信しないと、バックエンドがデータの解析方法を認識できません。

curl_setopt($curl, CURLOPT_HTTPHEADER, array('Content-Type: application/json'));
于 2016-01-09T01:43:42.347 に答える