Javascript IONAL$http.post请求返回空数据

Javascript IONAL$http.post请求返回空数据,javascript,php,angularjs,ionic-framework,Javascript,Php,Angularjs,Ionic Framework,状态为罚款200,但数据为空 这是我的密码: 在我的控制器中 var link = 'http://127.0.0.1/mobile/subject.php'; var userid = localStorage.getItem('loginDetails'); console.log(userid); $http.post(link, {userid}).then(function(res){ console.l

状态为罚款200,但数据为空 这是我的密码: 在我的控制器中

        var link = 'http://127.0.0.1/mobile/subject.php';
        var userid = localStorage.getItem('loginDetails');
        console.log(userid);

        $http.post(link, {userid}).then(function(res){
        console.log(res);
        })
在我的php代码中。 需要一次_('connection.php')


这里,我将localstorage值放在变量“userid”中,因为我想在php代码中使用localstorage值。我的代码特别是控制器中的代码有问题吗?

如果您的本地存储已经包含JSON对象,那么您只需要将{userid}更改为userid即可

    var link = 'http://127.0.0.1/mobile/subject.php';
    var userid = localStorage.getItem('loginDetails');
    console.log(userid);

    $http.post(link, userid, {}).success(function(res){
      console.log(res);
    })
    .error(function(err) {
      console.log(err)
    });

您无法访问$request->userid,因为您将{userid}作为$http.post()中的数据发送。尝试$http.post(链接,{userid:userid})

服务器端,您应该:

  • 检查$post_数据是否实际包含任何内容(var_dump())
  • 检查是否定义了localStorage.getItem('loginDetails')

建议:不要忘记转义sql查询。()

使用JSON.parse将其转换为JSON对象解决了我的问题。
var userid=JSON.parse(localStorage.getItem('loginDetails')

是的,我将其作为数据发送,因为我想使用该数据来标识数据在数据库中处理的主题。是,我使用var_dump()读取$post_数据,结果是字符串“我的本地存储中的值”(长度=18)。我还尝试了您对{userid:userid}的建议,但它仍然返回null。您的时间的tnx先生:使用$\u POST()进行数据传输。检查随请求发送的标头是否正确()。我几乎不建议您使用(php)框架来设计服务器端应用程序逻辑。它将为您处理许多安全问题,如:转义$\u POST、保护SQL查询。。。您还需要一个更好的安全层来验证您的用户。。。先生,我只是想问一下,如何通过这段代码将localstorage值设置为json对象是否正确。var userid=JSON.parse(localstorage.getitem('loginDetails');我使用JSON.stringify存储本地存储值。是的,这是正确的方法。。你做得对。。您应该在这里使用var userid=JSON.parse(localStorage.getItem('loginDetails');告诉我它是否有效?很好。。如果答案对你有用,请接受。。谢谢
    var link = 'http://127.0.0.1/mobile/subject.php';
    var userid = localStorage.getItem('loginDetails');
    console.log(userid);

    $http.post(link, userid, {}).success(function(res){
      console.log(res);
    })
    .error(function(err) {
      console.log(err)
    });