PageAdmin网站内容管理系统(CMS)交流论坛

注册

 

QQ登录

只需一步,快速开始

发新话题 回复该主题

加购物车为什么不行,晕了 [复制链接]

1#
控制台输出  {"State":0,"HttpCode":200,"Msg":"notLogin","Description":null,"Data":null,"Header":null}

ajax错了吗?
postData("http://www.phycai.net/jrgwc","token=123&id=0");

function postData(url,data)
      {
        var xmlobj = new XMLHttpRequest();
        xmlobj.open("POST", url, true);
        xmlobj.setRequestHeader("cache-control","no-cache");
        xmlobj.setRequestHeader("Content-Type", "text/html;charset=uft-8"); //指定发送的编码
        xmlobj.setRequestHeader("Content-Type", "application/x-www-form-urlencoded;"); //设置请求头信息
        xmlobj.send(data); //设置为发送给服务器数据
        xmlobj.onreadystatechange = function()
        {
           if(xmlobj.readyState == 4 && xmlobj.status == 200)
           {
             var rsp = xmlobj.responseText;
             console.log(rsp);
           }
        };
     };
分享 转发
TOP
2#

token错误,这个是登录后cookie中有一个名为UserToken的cookie,你要获取这个值,不能自己乱写

先获取usertoken
http://www.pageadmin.net/help/1154.cshtml
TOP
3#

回复 2楼xiyou的帖子

不乱写的也是同样结果,怀疑那个得不到
string usertoken = StringHelper.Format<string>(form["token"]); //登录用户的token,必传参数
TOP
4#

@{
       CurrentUser user = (CurrentUser)ViewBag.CurrentUser;
}

postData("http://www.phycai.net/jrgwc","token=@user.UserToken&id=0");
TOP
5#

回复 2楼xiyou的帖子

各种尝试都不行

var token = getToken();

postData("http://www.phycai.net/jrgwc","token="+token+"&id=1");

    function getToken()
    {
         var ajaxObj = new XMLHttpRequest();
         ajaxObj.open('get', 'http://www.phycai.net/e/getusertoken/');
         ajaxObj.send();

     ajaxObj.onreadystatechange = function () {
            if (ajaxObj.readyState == 4 && ajaxObj.status == 200) {
                alert('数据返回成功');
                alert(ajaxObj.responseText);
            //    document.querySelector('h1').innerHTML = ajaxObj.responseText;
                return ajaxObj.responseText.UserToken;
         }
      }
        
    }
TOP
6#

usertoken需要登录才有,你要自己浏览器开发工具中排查一下ajax是否写对,你要自己本地排查原因出在哪里,应该是你写的js脚本有问题,你可以试试jquery封装的ajax方法试试
TOP
7#

回复 6楼xiyou的帖子

我已经登录,js获取到token的,脚本没有错
最后编辑chaikm 最后编辑于 2021-12-28 10:14:21
TOP
8#

回复 6楼xiyou的帖子


TOP
9#

私信后台地址,账号和密码给我,我帮你排查一下
TOP
10#

模板中接收参数是usertoken。
string usertoken = StringHelper.Format<string>(form["usertoken"])

但是你前端传递的参数名是token,肯定接收不到了
TOP
11#

回复 10楼xiyou的帖子

两边一致过
TOP
12#

回复 10楼xiyou的帖子

一开始是安装教程套路来,实在不行了,就开始各种尝试的
TOP
13#

测试没有问题,你js中异步和同步问题要注意,否则token获取不到值的就进入下一步了,你代码量大多了,你本地用vs开发工具打开修改,后台太难修改了。
TOP
14#

回复 13楼xiyou的帖子

用@user.UserToken为什么也pos失败,那个值是有的呀
TOP
15#

回复 13楼xiyou的帖子

代码已经极精简了,还是不行
@{
     CurrentUser user = (CurrentUser)ViewBag.CurrentUser;
      
    if(user.UserName == "")
    {
        <script type="text/javascript">
                        alert("您还未登录,请先登录。。。");
            window.location.href="http://www.phycai.net/member";
        </script>
    }
}
<script type="text/javascript">
       var token ='@user.UserToken';
       alert(token);
       postData("http://www.phycai.net/jrgwc","usertoken="+token+"&id=1");

      
      function postData(url,data)
      {
        var xmlobj = new XMLHttpRequest();
        xmlobj.open("POST", url, true);
        xmlobj.setRequestHeader("cache-control","no-cache");
        xmlobj.setRequestHeader("Content-Type", "text/html;charset=uft-8"); //指定发送的编码
        xmlobj.setRequestHeader("Content-Type", "application/x-www-form-urlencoded;"); //设置请求头信息
        xmlobj.send(data); //设置为发送给服务器数据
        xmlobj.onreadystatechange = function()
        {
           if(xmlobj.readyState == 4 && xmlobj.status == 200)
           {
             var rsp = xmlobj.responseText;
             console.log(rsp);
           }
        };
     };
</script>
TOP
16#

回复 13楼xiyou的帖子

好像我反映的是那个语句貌似得不到pos参数
StringHelper.Format<string>
确认这个语句没有问题吗?
TOP
发新话题 回复该主题