curl -v -S -u devuser:devuser123 \
-F 'notification={"applicationId":"32768","schemaId":"32771","topicId":"32768","type":"USER"};type=application/json' \
-F [email protected] \
'http://localhost:8080/kaaAdmin/rest/api/sendNotification'
I tried to convert it into PHP and ended like this:
$notification = array("applicationId" =>"32768",
"schemaId"=>"32771",
"topicId"=>"32768",
"type"=>"USER");
$ch = curl_init();
$headers = array();
$headers[] = 'Authorization: Basic ZGV2dXNlcjpkZXZ1c2VyMTIz';
$headers[] = 'Content-Type: multipart/form-data; boundary=----WebKitFormBoundaryzeZR8KqAYJyI2jPL';
curl_setopt($ch, CURLOPT_URL, 'http://localhost:8080/kaaAdmin/rest/api/sendNotification');
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_TIMEOUT, '3');
curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, 'notification='.json_encode($notification).'&file='.realpath('notification.json'));
$content = curl_exec($ch);
print $content;
curl_close($ch);
I don't know how to set parameter "notification" and 'file'. please give me a solution.
Thank you!
I would suggest you to try the following code:
Basically this code the same thing as bash command you provided, but with one difference - it does not provide Content-Type for notification param.
Instead of
it sends
However, I think this still should work fine. If not, please get back to me and I will provide you a different script that won't be that nice and clear, but will work.
================ UPDATE 1 ====================
Here's ugly script that must work
----- UPDATE 2: Raw request added -----