在客户端,我有一个$.get
使用 jQuery调用的 get 请求
“修改_user.php?uid=SomeUserId”
有了这个XMLHttpRequest
,我得到了一些用户 ID 并加载了表单。问题是在客户端我没有我的用户 ID,以防我想修改我的用户。
所以我创建了另一个名为
modify_my_user.php
基本上我想做的是在服务器端获取 id 并模拟来自服务器的请求,就像它是 Ajax 请求一样。
像这样的东西
require_once 'HTTP/Request2.php';
$r = new HTTP_Request2('Ajax/modify_user.php?uid='.$_SESSION['uid'], HTTP_Request2::METHOD_GET);
$r->setHeader(array('X-Requested-With' => 'XMLHttpRequest'));
$r->send();
echo json_encode($r->getBody());
这是因为在 modify_user 我有一个拒绝方法,如果请求不是XMLHttpRequest
(isset($_SERVER['HTTP_X_REQUESTED_WITH']) && strtolower($_SERVER['HTTP_X_REQUESTED_WITH']) === 'xmlhttprequest');
问题是,当我尝试从服务器(在 modify_my_user.php 中)发出获取请求时,我收到了这个错误
HTTP_Request2_LogicException: HTTP_Request2 需要一个绝对的 HTTP(S) 请求 URL,'localhostWeb/Ajax/modify_user.php?uid=17'
有没有办法用这个包启用亲戚网址?