搜索

首页  >  问答  >  正文

javascript - 最近在做项目时,用ajax时遇到的一些问题!

在项目中用ajax要完成两个要求,第一就是当页面在不同服务器上时获得其ip地址,例如$.post( 'http://test.pingguo.com/ldmgr...{} 在这里我是写死了test.pingguo.com .然后我为了动态获取ip地址 这样写了var url=location.host.然后 $.post( 'http://“+url+”/ldmgr/api/userAnalysisReport/getAnalysisReport?analysisReportId='+Request.id+'',function(data){} 然后我打印了这个url 我在本地访问后台url链接 结果是127.0.0.1/index.html 这样子。这样做可以动态获取页面所处服务器的ip 因为还没有部署测试服 所以我现在还不是很清楚! 第二就是要获取页面地址栏后面的id值 我是这样写的 : 然后再在url里拼接 ?analysisReportId='+Request.id+'' ,即'http:///“+url+”/ldmgr/api/userAnalysisReport/getAnalysisReport?analysisReportId='+Request.id+'' ,function(data){} 。明天要上正式服 有点急 麻烦看出问题的吱一声 不胜感谢!!

迷茫迷茫2843 天前450

全部回复(2)我来回复

  • 黄舟

    黄舟2017-05-16 13:22:42

    问题一 为什么不用相对地址?

    为什么那么哽一定要在 url 里填域名部分呢?直接 '/path/a/b/c' 不就好了么?

    $.post('/path/to/api'); 

    问题二 善用 split 函数

    自己写的函数到底对不对,多用几组数据试一下就知道。

    function getUrlSearch() {
      return window.location.search.slice(1).split('&').map(function(item){
        return item.split('=').map(decodeURIComponent);
      }).reduce(function(search, item){
        if(item[0]) search[item[0]] = item[1];
        return search;
      }, {});
    }
    
    var searchParams = getUrlSearch(); // 为啥要写成类再实例化,这里根本没必要

    回复
    0
  • 过去多啦不再A梦

    过去多啦不再A梦2017-05-16 13:22:42

    第一点,js获取ip地址是不可能的,只能让服务器把他的ip和页面一起返回给你,然后你获取到再提交上去。

    第二个,没啥问题,就是从url提取数据

    回复
    0
  • 取消回复