设置自定义标头,然后重定向


Set custom header then redirect

我试图制作一个

  • 设置自定义标头("test:longstring")
  • 使用包含自定义标头的请求重定向到外部网站

我所做的:

public function myFunc() {
  header("test: helloWorld");
  header("Location: mysite.com");
  die();
}

重定向有效,但我在对mysite.com的GET请求中找不到测试头,为什么?

NB我想使用header而不是url参数,因为我要发送的字符串是openssl_sign生成的签名的base64。

重定向有效,但我在对mysite.com的GET请求中找不到测试头,为什么?

因为您设置了响应标头。

无法触发HTTP重定向并导致客户端添加自定义标头。

网站让浏览器发出带有自定义标头的HTTP请求的唯一方法是使用JavaScript和XMLHttpRequest对象。既然你说你正在处理一个外部网站,你还需要确保该网站实施了CORS,以授予你的网站许可。

我认为最好将"test"放在会话中,并从会话中获取值。

public function myFunc() {
  $_SESSION["test"] =  "helloWorld";
  header("Location: mysite.com");
  die();
}

// mysite.com
if(isset($_SESSION['test']))
{
// Do something
}