【发布时间】:2013-11-14 19:30:06
【问题描述】:
站点 A 有我所有的 php 类和函数:
这是我的操作 (profile.php) 页面 SITEA 中的内容:
$shopper = new Shopper($email);
$shopper->login($password);
$cInit = curl_init("http://siteA/test/login");
curl_setopt_array($cInit, array(
CURLOPT_RETURNTRANSFER=>true,
CURLOPT_POST=>true,
CURLOPT_POSTFIELDS=>urlencode(implode("&", array("email" => $email, "password" => $password)))
));
$content = curl_exec($cInit);
$err = curl_errno($cInit);
$errmsg = curl_error($cInit);
$results = json_decode($content)
?>
站点 B 托管在具有表单和卷曲选项的不同服务器上:
$email = $_POST['email'];
$password = $_POST['password'];
$shopper = new Shopper();
$token = $shopper->login($email, $password);
echo json_encode(array("token" => $token));
<form id='register' action='http://siteA/test/profile' onsubmit="return validateForm()" method='post' accept-charset='UTF-8'>
<fieldset>
<legend>Log In</legend><br/>
<label for='email' >Email Address*:</label>
<input type='text' name='email' id='email' maxlength="50" /><br/><br/>
<label for="password">Password*:</label>
<input type="password" name="password" placeholder="password" required><br/><br/>
<input type='submit' name='Submit' value='Submit' />
</fieldset>
</form>
令牌一直返回 false,到目前为止我的代码看起来是否正确?
【问题讨论】:
-
我想真正的问题是......在
$cInit = curl_init("");...里面是不是假设要回到登录页面? -
站点 a 有
$shopper = new Shopper($email);,但 B 有$shopper = new Shopper();。参数是问题的区别吗? -
curl_init("")set's curl optCURLOPT_URL|也就是说,这是它所追求或获取的 url -
那么url一定要指向登录页面吗?
-
它也需要指出您发布信息的位置。因此,如果您的登录还包含发布功能(不是一个好习惯),那么可以。但是,如果您期望通过另一个页面上的其他函数运行您的
POST变量,那么不会。在您的情况下,您发布的是email和passowrd,这意味着您也希望拥有$_POST['email']的任何页面“卷曲”