Javascript 访问API的php脚本无法建立用户名/密码

Javascript 访问API的php脚本无法建立用户名/密码,javascript,php,jquery,Javascript,Php,Jquery,我使用ajax调用在服务器上启动php脚本: <?php readfile("https://url.com/authenticateUser?login=test&apiKey=test"); $partNumber = urlencode($_POST['partNumber']; readfile("https://url.com/search?\"partNumber\"=\"$partNumber\"); ?> 我从服务器返回的是: 2身份验证成功True1无效用

我使用ajax调用在服务器上启动php脚本:

<?php
readfile("https://url.com/authenticateUser?login=test&apiKey=test");
$partNumber = urlencode($_POST['partNumber'];
readfile("https://url.com/search?\"partNumber\"=\"$partNumber\");
?>
我从服务器返回的是:

2身份验证成功True1无效用户名或密码False


因此,我的第一个readfile可以很好地验证我的用户身份,但随后我打第二个电话,我就注销了。我在这里做错了什么?

我认为这是因为url.com上的应用程序希望在这里使用cookie进行某种持久会话,例如,readfile无法提供这种会话。您正在对其进行身份验证,但是对readfile的后续调用将使远程服务看起来像一个全新的连接,因为没有令牌被传回。这是一个好主意。关于如何建立一个cookie会话而不是使用readfile,有什么想法或进一步的阅读吗?我知道如何在我的服务器内部设置cookie,但我不知道如何将cookie发送到我连接的url,而且我似乎在这个搜索S.O.上找不到任何东西。使用curl with CURLOPT_COOKIEJAR,但首先,您应该通过从浏览器调用第一个URL并检查它返回的标题来验证此服务是否实际使用了cookie。否则,请检查该服务提供的有关其如何处理身份验证的任何文档-需要有用于持久性的cookie,或者可能需要某种API会话令牌作为URL参数传递。当我使用凭据在地址栏中键入URL时,我得到的信息如下:{状态:{代码:2,消息:身份验证成功,成功:true}我要在标题中具体查找什么?其中有很多数据……这三个可能很有用:连接:保持活动,设置Cookie:JSESSIONID=8370b66678bf31885f594f79e6a288575d28977b3c88b6d4b41e5633670f4918.E38LB3QTB3Akai0RBXeMahpBHB0;路径=/Search;安全和设置Cookie:BNI_SECookie=000000000000000000000000000000000000 3300AA8C0000BB01;Path=/;Domain=url.com;HttpOnly
$.ajax({
url: "search.php";
type: "post",
dataType: "xml",
data : { partNumber : q }, //q is defined earlier....
success : function(data) {
 console.log(data);
}
});