如何解决使用 Postman 调用 localhost PHP API 时丢失 $_SERVER[\'HTTP_ORIGIN\'] 的问题?

2024-10-27 22:50:18 编辑:抖狐科技 来源:摘自互联网

如何解决使用 postman 调用 localhost php api 时丢失 $_server[\'http_origin\'] 的问题?

使用 postman 打 localhost php api 时丢失 $_server['http_origin'] 的解决方法

“origin”是浏览器 cors 中用来区分来源的 header 头。该头仅在浏览器环境中使用,在其他环境(如 php)中并不受 cors 限制。因此,在 postman 中调用 localhost php api 时,可能不会发送此头,导致 php 脚本中 $_server['http_origin'] 无法获取。

在 postman 中模拟 http_origin

以下是在 postman 中模拟 http_origin 的步骤:

  1. 在 postman 中打开需要调用的 api 请求。
  2. 切换到“header”选项卡。
  3. 在名称栏中输入“origin”。
  4. 在值栏中输入 api 来源的 url,格式为:://[:]。例如:https://example.com

注意:

由于 http_origin 并非所有用户代理都会发送,因此在 php 中,需要使用 isset 或 ?? 操作符判断该头是否存在,再取用。例如:

$origin = $_server['http_origin'] ?? '';

登录后复制

立即学习“PHP免费学习笔记(深入)”;

$origin = '';
if(isset($_SERVER['HTTP_ORIGIN'])){
  $origin = $_SERVER['HTTP_ORIGIN'];
}

登录后复制

以上就是如何解决使用 Postman 调用 localhost PHP API 时丢失 $_SERVER[\'HTTP_ORIGIN\'] 的问题?的详细内容,更多请关注抖狐科技其它相关文章!

本站文章均为抖狐网站建设摘自权威资料,书籍,或网络原创文章,如有版权纠纷或者违规问题,请即刻联系我们删除,我们欢迎您分享,引用和转载,我们谢绝直接复制和抄袭!感谢...
我们猜你喜欢