【问题标题】:get the response from SMS gateway in php [duplicate]在 php 中从 SMS 网关获取响应 [重复]
【发布时间】:2016-11-06 06:49:47
【问题描述】:

如何从站点中的 SMS 网关(通常)获取响应?

【问题讨论】:

  • 请使用您正在使用的相关php 代码更新您的问题。还有什么是预期的输出,什么是实际的结果。

标签: php http sms response gateway


【解决方案1】:

SMS 网关的文档应描述如何通过 HTTP 呈现数据;格式将特定于 SMS 网关,没有标准。

网关是否由第三方维护?如果它是您自己安装的,那么它如何呈现信息可能是其配置的一部分,问题不在此处讨论。

假设网关配置正确,您可以在 $_REQUEST 中看到网关提供的所有数据。在某些(非常模糊的)情况下,数据可能会以原始帖子的形式呈现。

只需捕获完整的请求即可查看数据的呈现方式。如果 PHP 在 Apache 中作为 mod_php 运行(你没有说),这是最简单的:

<?php
$log=tempnam("/tmp", 'mo_sms');
$output="started " . date('r') . "\n";
$headers = apache_request_headers();
foreach ($headers as $header => $value) {
   $output.="$header : $value\n";
}
$output.="\n";
while (!feof(STDIN)) {
   $output.=fgets($TDIN);
}
file_put_contents($log, $output);

请注意,这可能不会完成与网关的事务 - 它可能会期待某种数据已成功交付的确认(但可能会这样处理 HTTP 200)。

【讨论】:

    猜你喜欢
    • 2017-06-18
    • 2018-01-30
    • 1970-01-01
    • 2021-01-22
    • 2016-04-27
    • 1970-01-01
    • 2017-05-19
    • 1970-01-01
    • 2013-01-08
    相关资源
    最近更新 更多