how to get response from rest api callback call

I have a sms api in php that i call to send sms. I pass some json and a url callback to get response status and the sms is sent.

Afterwards the server calls my callback url but i cannot get the response body. $_GET and $_POST are empty... The documentation is non existing. It should have some json. Can someone help me? Thanks in advance


    REQUEST_URI => /dev/egoi-resp.php
    GET => Array
    (
    )

    POST => Array
    (
    )

    SERVER => Array
    (
        [PATH] => /sbin:/usr/sbin:/bin:/usr/bin
        [PWD] => /usr/local/cpanel/cgi-sys
        [SHLVL] => 0
        [SCRIPT_NAME] => /dev/egoi-resp.php
        [REQUEST_URI] => /dev/egoi-resp.php
        [QUERY_STRING] => 
        [REQUEST_METHOD] => POST
        [SERVER_PROTOCOL] => HTTP/1.1
        [GATEWAY_INTERFACE] => CGI/1.1
        [REMOTE_PORT] => 45721
        [SCRIPT_FILENAME] => /home/nchaves/public_html/dev/egoi-resp.php
        [SERVER_ADMIN] => webmaster@nunochaves.com
        [CONTEXT_DOCUMENT_ROOT] => /home/nchaves/public_html
        [CONTEXT_PREFIX] => 
        [REQUEST_SCHEME] => http
        [DOCUMENT_ROOT] => /home/nchaves/public_html
        [REMOTE_ADDR] => 94.46.251.59
        [SERVER_PORT] => 80
        [SERVER_ADDR] => 185.11.164.13
        [SERVER_NAME] => nunochaves.com
        [SERVER_SOFTWARE] => Apache
        [SERVER_SIGNATURE] => 
        [LD_LIBRARY_PATH] => /usr/local/apache/lib
        [CONTENT_LENGTH] => 166
        [HTTP_CONNECTION] => close
        [HTTP_HOST] => nunochaves.com
        [HTTP_USER_AGENT] => Java/1.7.0_25
        [HTTP_ACCEPT] => application/json
        [CONTENT_TYPE] => application/json
        [UNIQUE_ID] => VFeXf7kLpA0AB@tWLxMAAADG
        [FCGI_ROLE] => RESPONDER
        [PHP_SELF] => /dev/egoi-resp.php
        [REQUEST_TIME_FLOAT] => 1415026559.7367
        [REQUEST_TIME] => 1415026559
    )


I had the hole webhook thing working. the only trouble was to grad the json answer when the hook was called. I managed to find the answer.

$data = json_decode(file_get_contents('php://input'));


According to the documentation:

url (string)
The URL that will be used for the Hook

actions (list)
The list of actions for which this hook is triggered.
Acceptable values: PROCESSED, SENT, DELIVERED, FAILED, CANCELED,

This URL will be used as the callback when a hook is triggered for the events you subscribed. So, lets imagine you subscribe to the SENT hook with the url http://foo.org/foo.php .

The hook related data will be sent ( POST 'ed) to the url -> http://foo.org/foo.php .

To see the received data I would go with this (naive) stub as a starting point:

<?php
    $f = fopen('/tmp/hook.log', 'a+');
    $d = date('Y-m-d H:i:s');
    fwrite($f, "------------- $d -----------n");
    fwrite($f, print_r($_POST, true));
    fclose($f);
?>

Examine the /tmp/hook.log file ( tail -f /tmp/hook.log ) to see what is being sent.

Hope this helps, Regards, LL

链接地址: http://www.djcxy.com/p/8596.html

上一篇: Spring MVC:发布请求和包含数组的json对象:错误的请求

下一篇: 如何获得来自其他API回调调用的响应