angularjs
.post()默认将Content-
type标头设置为
application/json。您要覆盖此内容以传递表单编码的数据,但是您没有更改
data值以传递适当的查询字符串,因此PHP并未
$_POST按预期填充。
我的建议是只使用默认的angularjs设置
application/json作为标头,读取PHP中的原始输入,然后反序列化JSON。
可以这样在PHP中实现:
$postdata = file_get_contents("php://input");$request = json_depre($postdata);$email = $request->email;$pass = $request->password;
或者,如果您严重依赖
$_POST功能,则可以形成类似的查询字符串
email=someemail@email.com&password=somepassword并将其作为数据发送。确保此查询字符串是URL编码的。如果是手动构建的(而不是使用类似的东西
jQuery.serialize()),则Javascript
enpreURIComponent()可以为您解决问题。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)