1

我有两个由同一个 $.ajax 请求创建的请求,但一个来自 Google Chrome,另一个来自 PhoneGap 应用程序。WebMatrix 应用程序应返回已提交其用户名和密码凭据的用户的 ID(PS:这不是应用程序的重点,但为了这个问题而简化了)。

基于浏览器的请求有效,但 PhoneGap 无效。你知道为什么吗?我已经包含了 Chrome 请求标头,但我无法获得完整的 PhoneGap 应用程序标头。

我已经找到了解决这个问题的方法,但它真的让我很烦恼,它不起作用。

WebMatrix 应用程序代码

if(IsPost){
        var username = Request.Form["username"];
        var password = Request.Form["password"];
        var rememberMe = Request.Form["rememberMe"].AsBool();
        var credentials = false;

        if(!username.IsEmpty() && !password.IsEmpty()){
            credentials = true;
        }

        if (credentials && WebSecurity.Login(username, password, rememberMe)) {

            Response.Write(WebSecurity.CurrentUserId);
        }
}

Google Chrome 请求标头细分 -

Accept:application/json, text/javascript, */*; q=0.01
Accept-Charset:ISO-8859-1,utf-8;q=0.7,*;q=0.3
Accept-Encoding:gzip,deflate,sdch
Accept-Language:en-US,en;q=0.8
Connection:keep-alive
Content-Length:105
Content-Type:application/x-www-form-urlencoded
Cookie:ASP.NET_SessionId=XXXXXXX
Host:xxxxxxxxxxx
Origin:file://
User-Agent:Mozilla/5.0 (Macintosh; Intel Mac OS X 10_7_3) AppleWebKit/535.19 (KHTML, like Gecko) Chrome/18.0.1025.168 Safari/535.19
4

0 回答 0