我有一个AJAX调用一个PHP(在不同的域)登录脚本,它看起来如下所示:“资源解释为脚本,但使用MIME类型text/html”转移响应
var request = $.ajax({
crossDomain: true,
url: "http://www.domain.com/PHP/fct.login.php",
type: "POST",
data: $('#loginForm').serialize(),
dataType: "jsonp",
contentType: "application/json; charset=utf-8",
});
而且在我的PHP脚本中,我有以下内容:
header('Content-Type: text/javascript');
echo $_GET['callback'] . '(' . "{'status' : '1'}" . "{'text' : 'ok'}" . "{'userid' : $member['user_id']}" . ')';
?>
但它不起作用。在我的控制台我只是得到一个Resource interpreted as Script but transferred with MIME type text/html消息...
编辑:我更新了我的回答为“费利克斯克林”之称,但现在我得到解析错误。
我更新的响应是这样的:
echo $_GET['callback'] . "({status : 1},{text : 'ok'},{userid : ".$member['user_id']."})";
和错误的样子:
Error: Parse error on line 1:
{status : 1},{text :
-^
Expecting 'STRING', '}'
编辑2:没关系,现在它工作(与更新的响应)。当我通过浏览器直接查看php脚本(没有ajax调用等)时,我得到了parse error。
+0
你不检索JavaScript。删除'header'声明。 –
+2
@Ohgodwhy:当然,回应是JavaScript。 –
+0
@FelixKling你会怎么说? –