PHP如何响应HTTP请求并继续处理?
我正在使用支付网关的API来执行回调请求。 当发出回调请求时,网关希望我以“OK”响应。 差不多没什么。这并不意味着html呈现的响应。只是一个包含这两个字母的回调文件。注意,这并不意味着它需要HTTP状态码200/OK。。。它需要单词“OK”的实际数据(而不是标题) 所以这是行不通的:PHP如何响应HTTP请求并继续处理?,php,http,response.redirect,http-status-code-200,Php,Http,Response.redirect,Http Status Code 200,我正在使用支付网关的API来执行回调请求。 当发出回调请求时,网关希望我以“OK”响应。 差不多没什么。这并不意味着html呈现的响应。只是一个包含这两个字母的回调文件。注意,这并不意味着它需要HTTP状态码200/OK。。。它需要单词“OK”的实际数据(而不是标题) 所以这是行不通的: <html><body>OK</body></html> OK 这将有助于: <?php echo "OK"; ?> 但是,在我发回OK后,
<html><body>OK</body></html>
OK
这将有助于:
<?php echo "OK"; ?>
但是,在我发回OK后,我需要在服务器端执行一些操作,然后将浏览器页面重定向到另一个页面。但当我尝试这样做时:
<?php
echo "OK";
header('Location: http://www.store.com/success.php');
exit;
?>
网关忽略回音“OK”,而是读取我重定向到的success.php页面的html
那么,我怎样才能发回“OK”,但继续做我这边的事情呢
谢谢您无法发送内容然后重定向。重定向标题设置必须单独完成。您不能发送内容然后重定向。重定向头设置必须单独完成。您可以尝试使用强制php写出OK。您可以尝试使用强制php写出OK。可以使用javascript或meta refresh标记将重定向移动到客户端吗?可以将重定向移动到客户端吗使用javascript或meta refresh标记?在发送
OK
之前,您可以通过命令行调用PHP,使PHP表现为多重威胁。在发送OK
之前,您可以通过命令行调用PHP,使PHP表现为多重威胁。如果发送位置:
标题,会发生什么首先?在正文中发送内容后,不能更改/添加HTTP头。结果相同。它仍然会获取重定向页面的html。如果你走错了方向,你应该通过服务与网关进行对话。如果API正在调用你的页面,重定向浏览器的目的是什么?听起来他们似乎遵循了重定向,但仍然希望得到OK
响应。您需要做多少事情(即1秒钟5分钟的处理)?如果它很短,只需执行它,然后输出OK,否则需要在后台生成另一个进程。如果您使用PHP-FPM,则会得到函数fastcgi\u finish\u request()
,该函数允许您终止请求并继续处理。如果您先发送位置:
头,会发生什么情况?在发送正文中的内容后,您无法更改/添加HTTP头。相同的结果。它仍然会获取重定向页面的html。如果你走错了方向,你应该通过服务与网关进行对话。如果API正在调用你的页面,重定向浏览器的目的是什么?听起来他们似乎遵循了重定向,但仍然希望得到OK
响应。您需要做多少事情(即1秒钟5分钟的处理)?如果它很短,只需执行它,然后输出OK,否则需要在后台生成另一个进程。如果您使用PHP-FPM,那么您将获得函数fastcgi\u finish\u request()
,该函数允许您终止请求并继续处理。谢谢您的回答。。我一直担心这件事。。好啊我会试着和gateway谈谈,问他们希望人们在这种情况下做些什么。谢谢你的回答。。我一直担心这件事。。好啊我会试着和gateway谈谈,问他们希望人们在这种情况下做些什么。Thanks@powtac查找此项查找flush():@powtac查找此项查找flush():