我目前正在构建一个API,需要用户名和密码才能工作(显然)。我希望通过两种方式使用此API:
使用第二种方法我遇到了一些麻烦。进一步解释实施如下:
在https://example1.com上我添加了以下代码
if (session_status() == PHP_SESSION_NONE) {
session_start();
}
$_SESSION['u'] = 'username_here';
$_SESSION['p'] = 'password_here';
运营商在iframe网址中包含<?=session_id();?>
,例如src="https://iframe.example1.com/?sid=<?=session_id();?>"
如果iframe和运营商网站在同一台服务器上,这可以正常工作(显然),因为会话存储可以从双方读取,然后它将显示为:$_SESSION['u'];
和{{1 },使用给定的用户名和密码调用API并检索所需的信息。
如果iframe保留在https://example2.com(不同的服务器)上,则会话数据无法读取
有哪些安全方法可以传递用户名和密码,同时尽可能保持API的RESTful状态?
提前谢谢
答案 0 :(得分:0)
我不知道这是否符合您的需求:您可以尝试从“运营商”域(使用正确的标头)向您的API发出ajax请求,然后渲染,而不是从iframe调用您的API将结果导入iframe。
灵感来自:How to set custom http headers when changing iframe src?