如何在服务器端使用 easyXDM 获取 User-Agent

Posted

技术标签:

【中文标题】如何在服务器端使用 easyXDM 获取 User-Agent【英文标题】:how to get User-Agent using easyXDM at server side 【发布时间】:2011-12-26 00:54:06 【问题描述】:

我尝试使用这个 Eaxmple,但它没有将 User-Agent 传递给服务器

client.html

rpc:new easyXDM.Rpc(            
       remote: remoteXDM    // the path to the provider
     ,
     
        remote: 
               login:

                
    ),


Sendrequesttoserver: function(message)

     tricklebot.rpc.login(message,function(response)
        alert(response);
        ,
        function(response) 
            alert("Error message : "+response.message);  
        ); 


服务器端api.html代码

var rpc = new easyXDM.Rpc(,

    local: 
        login: function(message, successFn, errorFn)
            serverresponce(message,successFn,errorFn);
        
        
);


serverresponce(message,successFn,errorFn)
    Ext.Ajax.request(    
        url: urlhost+'/welcome',     
        method: 'POST',
        jsonData: '\"message\":\"'+message+'\"',
        success: function(response, opt) 
            successFn(response);
        ,
        failure: function(response, action) 
            errorFn("invalid message");
         
    );

欢迎页面网址

request.getHeader("User-Agent");

它给null

在欢迎页面上我能够接收消息但无法接收 request.getHeader("User-Agent");

那么如何在服务器端使用easyXDM从请求中获取用户代理

【问题讨论】:

【参考方案1】:

您可以将用户代理注入到请求中(这样您就可以在终点收到它):

navigator.userAgent

【讨论】:

浏览器不允许在javascript中设置User-Agent 你是对的,但你可以从服务器端的 post 请求中手动获取它......是不是 Ext.Ajax.request() 没有发送用户代理?

以上是关于如何在服务器端使用 easyXDM 获取 User-Agent的主要内容,如果未能解决你的问题,请参考以下文章

带有 GitHub API 的 JavaScript XHR

如何判断网页是移动端还是电脑端打开的

使用spring security时如何获取认证信息?

使用 Jquery 获取服务器端分页

如何正确处理服务器端错误?

如何从request中获取指定cookies