file_get_contents API 将两个连接与会话链接


file_get_contents api link two connections with session

我有两个 api 页面,api1.php 和 api2.php。在 1 上设置了一个会话,在 2 上需要返回此会话。当然会有额外的函数,但我的目标是通过使用会话将这两个 api 连接链接到一个和彼此。

接口1.php:

session_start();
$api_key = 'dfdsakdsfjdskfjdskfdsjfdfewfifjjsd';
$_SESSION['api_key'] = $api_key;
setcookie('api_key', $api_key);

API2.php:

session_start();
echo $_SESSION['api_key'];
echo $_COOKIE['api_key'];

测试.php:

$url = 'http://example.com/api1.php';
$content1 = file_get_contents($url);
$url2 = 'http://example.com/api2.php'; 
$content2 = file_get_contents($url2);
echo $content2;

您可能已经注意到,我正在访问页面测试.php以获得结果。但是没有返回任何结果。有人可以告诉我为什么这不起作用,以及实现所有这些事情的另一种方法是什么?

(注意:example.com 都是同一个网站(我的))

您正确地编写了"链接"代码。 问题实际上出在测试中.php! 它不是执行两个文件中包含的代码,而是检索整个文件。 如果你查看源代码,你会注意到PHP标签和你的代码。检查这是否有效的更好解决方案是分别转到 api1.php 和 api2.php。 通过一些代码调整,您也可以只使用 include() 或 require() 函数。 看起来像这样:

接口2.php

echo $_SESSION['api_key'] . "'n<br/>'n";
echo $_COOKIE['api_key'];

测试.php

include('api1.php');
include('api2.php');

值得注意的是,使用 include 和 require 函数执行 api1.php 和 api2 中的代码.php就好像该代码是 test.php 的一部分一样。