当前位置: 首页 > 知识库问答 >
问题:

如何从rest api回调调用获得响应

施彬郁
2023-03-14

我有一个短信api在PHP,我打电话发送短信。我通过一些json和一个url回调来获得响应状态,短信被发送。

之后服务器调用我的回调url,但我不能得到响应体。$_GET和$_POST是空的...留档不存在。它应该有一些json。有人能帮帮我吗?提前感谢


    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
    )

共有2个答案

郭逸清
2023-03-14

根据文件:

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,

当您订阅的事件触发钩子时,此URL将用作回调。所以,让我们假设您订阅了带有urlhttp://foo.org/foo.phpSENT钩子。

钩子相关数据将被发送(POST'ed)到url-

要查看接收到的数据,我将使用此(原始)存根作为起点:

<?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);
?>

检查/tmp/hook。记录文件(tail-f/tmp/hook.log)以查看发送的内容。

希望这对你有帮助

禹正阳
2023-03-14

我有洞网钩的事情工作。唯一的麻烦是在调用钩子时对json答案进行分级。我设法找到了答案。

$data=json\u解码(文件\u获取\u内容('php://input'));

 类似资料:
  • 问题内容: 我有一个发出异步请求的函数。我如何从中返回响应/结果? 我尝试从回调中返回值,以及将结果分配给函数内部的局部变量并返回该局部变量,但这些方法均未真正返回响应(它们都返回或变量的初始值为任意值) 。 使用jQuery函数的示例: 使用node.js的示例: 使用承诺块的示例: 问题答案: 在 一 中的Ajax代表 异步 。这意味着发送请求(或接收响应)已从正常执行流程中删除。在您的示例中

  • 使用promise的块的示例:

  • 问题内容: 我有一个发出Ajax请求的函数。我如何从中返回响应? 我尝试从回调中返回值,以及将响应分配给函数内部的局部变量并返回该局部变量,但这些方法均未真正返回响应。 问题答案: 问题 在一中的Ajax代表异步。这意味着发送请求(或更确切地说接收响应)已从正常执行流程中删除。在你的示例中,立即返回并且在调用;作为回调传递的函数之前执行下一条语句。 这是一个类比,希望可以使同步流和异步流之间的区别

  • 我正在使用Axios API从APIendpoint读/写。带有axios调用的异步函数返回一些响应(数组)。我可以使用console.log()打印响应(数组),但我希望使用下标([])访问单个数组元素,但每次都失败。 然而,当在chrome上检查控制台日志时,我可以看到响应是一个数组,但不能使用特定索引上的数据进行进一步处理。 下面是代码: 从上面的代码中,我得到了100个元素的数组形式的响应

  • 问题内容: 因此,我正在研究一种可以长时间显示页面请求的工具。 我通过使用jQuery Ajax(http://api.jquery.com/jQuery.ajax/)来做到这一点,并且我想找出获得响应时间的最佳方法。 我找到了一个描述在JavaScript中使用“日期”的线程(http://forum.jquery.com/topic/jquery-get-time- of-ajax-post)

  • 问题内容: 我需要在onclick事件的调用对象上有一个处理程序 即 我想在不使用jquery的$()。click或$()。live的情况下执行此操作,但要使用上述方法。 问题答案: 传递内联点击处理程序 或在函数中使用根据[W3C DOM 2级事件模型 但是,当然,IE是不同的,因此处理此问题的原始JavaScript方法是 或更详细 其中是被传递到在比IE其他浏览器的功能。 如果您使用的是jQ