精华内容
下载资源
问答
  • 在做一个获取用户登录ip时遇到了点问题,在后台获取时出现了获取到的ip地址是我服务器的地址(原因未知,没找到),,就想着在前端直接获取到 然后发送给后端,这样就不会出现ip地址服务器地址的尴尬了 ...

    在做一个获取用户登录ip时遇到了点问题,在后台获取时出现了获取到的ip地址是我服务器的地址(原因未知,没找到),,就想着在前端直接获取到 然后发送给后端,这样就不会出现ip地址是服务器地址的尴尬了

    但是在查询资料时,发现好多是用js获取,但是vue引用外部js特别麻烦,甚至没找到解决的方法。

    查找好久资料后,才发现有对应的vue解决方案,也就是使用搜狐的api,具体使用如下

    在vue.config.js配置文件中配置跨域
    注意: 每次更新配置文件都需要重启项目,否则无效

     devServer: {
          proxy: {//配置跨域
              '/apis': {
                  target: 'http://pv.sohu.com',//搜狐的域名
                  ws: true,
                  changOrigin: true,//允许跨域
                  pathRewrite: {
                      '^/apis': ''//请求的时候使用这个api就可以
                  }
              }
              
          }
    

    使用:
    发送网络请求

    this.$http.post('/apis/cityjson?ie=utf-8',{}).then(res => {
        console.log(res.data);
        //解析格式即可
     })
    

    返回数据:
    在这里插入图片描述

    另附获取设备型号的方法

    在这里插入图片描述

    // get brower
    export function GetCurrentBrowser () {
      let ua = navigator.userAgent.toLocaleLowerCase()
      let browserType = null
      if (ua.match(/msie/) != null || ua.match(/trident/) != null) {
        browserType = 'IE'
      } else if (ua.match(/firefox/) != null) {
        browserType = 'firefox'
      } else if (ua.match(/ucbrowser/) != null) {
        browserType = 'UC'
      } else if (ua.match(/opera/) != null || ua.match(/opr/) != null) {
        browserType = 'opera'
      } else if (ua.match(/bidubrowser/) != null) {
        browserType = 'baidu'
      } else if (ua.match(/metasr/) != null) {
        browserType = 'sougou'
      } else if (ua.match(/tencenttraveler/) != null || ua.match(/qqbrowse/) != null) {
        browserType = 'QQ'
      } else if (ua.match(/maxthon/) != null) {
        browserType = 'maxthon'
      } else if (ua.match(/chrome/) != null) {
        var is360 = _mime('type', 'application/vnd.chromium.remoting-viewer')
        if (is360) {
          browserType = '360'
        } else {
          browserType = 'chrome'
        }
      } else if (ua.match(/safari/) != null) {
        browserType = 'Safari'
      } else {
        browserType = 'others'
      }
      return browserType
    }
     
    function _mime (option, value) {
      var mimeTypes = navigator.mimeTypes
      for (var mt in mimeTypes) {
        if (mimeTypes[mt][option] === value) {
          return true
        }
      }
      return false
    }
     
    // get os
    export function GetOs () {
      let sUserAgent = navigator.userAgent.toLocaleLowerCase()
      let isWin = (navigator.platform === 'win32') || (navigator.platform === 'windows')
      let isMac = (navigator.platform === 'mac68k') || (navigator.platform === 'macppc') || (navigator.platform === 'macintosh') || (navigator.platform === 'macintel')
      if (isMac) return 'Mac'
      var isUnix = (navigator.platform === 'x11') && !isWin && !isMac
      if (isUnix) return 'Unix'
      var isLinux = (String(navigator.platform).indexOf('linux') > -1)
      if (isLinux) return 'Linux'
      if (isWin) {
        var isWin2K = sUserAgent.indexOf('windows nt 5.0') > -1 || sUserAgent.indexOf('windows 2000') > -1
        if (isWin2K) return 'Win2000'
        var isWinXP = sUserAgent.indexOf('windows nt 5.1') > -1 || sUserAgent.indexOf('windows xp') > -1
        if (isWinXP) return 'WinXP'
        var isWin2003 = sUserAgent.indexOf('windows nt 5.2') > -1 || sUserAgent.indexOf('windows 2003') > -1
        if (isWin2003) return 'Win2003'
        var isWinVista = sUserAgent.indexOf('windows nt 6.0') > -1 || sUserAgent.indexOf('windows vista') > -1
        if (isWinVista) return 'WinVista'
        var isWin7 = sUserAgent.indexOf('windows nt 6.1') > -1 || sUserAgent.indexOf('windows 7') > -1
        if (isWin7) return 'Win7'
      }
      if (sUserAgent.indexOf('android') > -1) return 'Android'
      if (sUserAgent.indexOf('iphone') > -1) return 'iPhone'
      if (sUserAgent.indexOf('symbianos') > -1) return 'SymbianOS'
      if (sUserAgent.indexOf('windows phone') > -1) return 'Windows Phone'
      if (sUserAgent.indexOf('ipad') > -1) return 'iPad'
      if (sUserAgent.indexOf('ipod') > -1) return 'iPod'
      return 'others'
    }
     
    // getAddress
    // {/*<script src="http://pv.sohu.com/cityjson?ie=utf-8"></script>*/}
    // {/*export function GetAddress () {*/}
    //   {/*return returnCitySN*/}
    // {/*}*/}
    

    使用:

    //获取用户登录设备
    import * as sysTool from "assets/js/systemTool";
    
    //方法中使用
          this.brower = sysTool.GetCurrentBrowser();
          this.os = sysTool.GetOs();
          console.log(
            "浏览器,操作系统,:",
            this.brower,
            this.os
          );
    
    

    参考文章:
    https://blog.csdn.net/Lycoriy/article/details/103596419?ops_request_misc=&request_id=&biz_id=102&utm_term=vue%E8%8E%B7%E5%8F%96IP&utm_medium=distribute.pc_search_result.none-task-blog-2blogsobaiduweb~default-0-103596419

    https://blog.csdn.net/xuebimi/article/details/96840965?ops_request_misc=&request_id=&biz_id=102&utm_term=vue%E8%8E%B7%E5%8F%96IP&utm_medium=distribute.pc_search_result.none-task-blog-2blogsobaiduweb~default-5-96840965

    展开全文
  • 再做前端页面的时候,想获取本地的ip地址,可能是为了和服务器通信,可能是为了展示,无论哪种,目的要获取js get IP 相信大家搜到最多的是以下的js方法(都是超来抄去),我来讲讲我遇到的坑,方法虽然很笨,只...

      再做前端页面的时候,想获取本地的ip地址,可能是为了和服务器通信,可能是为了展示,无论哪种,目的要获取js get IP

     相信大家搜到最多的是以下的js方法(都是超来抄去),我来讲讲我遇到的坑,方法虽然很笨,只为了解决问题。

    这里要强调下,我们这里是获取本机IP,局域网或者独立电脑,木有联网,若是借用网络接口,如搜狐、新浪等接口地址不行,因为木有网络。就是那种我一打开网页就直接获取了。

    方法一:

    getUserIP(onNewIP) { //  onNewIp-新IP的侦听器函数
                //兼容 firefox和 chrome浏览器
                var myPeerConnection = window.RTCPeerConnection || window.mozRTCPeerConnection || window.webkitRTCPeerConnection;
                //定义参数
                var pc = new myPeerConnection({
                     iceServers: []
                 }),
                 noop = function() {},
                 localIPs = {},
                 ipRegex = /([0-9]{1,3}(\.[0-9]{1,3}){3}|[a-f0-9]{1,4}(:[a-f0-9]{1,4}){7})/g,
                 key;
        
                 function iterateIP(ip) {
                     if (!localIPs[ip]) onNewIP(ip);
                     localIPs[ip] = true;
                }
        
                  //create a bogus data channel
                 pc.createDataChannel("");
        
                 // create offer and set local description
                 pc.createOffer().then(function(sdp) {
                     sdp.sdp.split('\n').forEach(function(line) {
                         if (line.indexOf('candidate') < 0) return;
                         line.match(ipRegex).forEach(iterateIP);
                     });
        
                     pc.setLocalDescription(sdp, noop, noop);
                 }).catch(function(reason) {
                     // An error occurred, so handle the failure to connect
                 });
        
                 //sten for candidate events
                 pc.onicecandidate = function(ice) {
                     if (!ice || !ice.candidate || !ice.candidate.candidate || !ice.candidate.candidate.match(ipRegex)) return;
                     ice.candidate.candidate.match(ipRegex).forEach(iterateIP);
                 };
                //  console.log("ip1:"+ip);
            },

    方法二:

    getUserIP(){
            var $this = this
            var RTCPeerConnection = window.RTCPeerConnection || window.webkitRTCPeerConnection || window.mozRTCPeerConnection;
            if (RTCPeerConnection) (function () {
                var rtc = new RTCPeerConnection({iceServers:[]});
                if (1 || window.mozRTCPeerConnection) {     
                    rtc.createDataChannel('', {reliable:false});
                };
                
                rtc.onicecandidate = function (evt) {
                    if (evt.candidate) grepSDP("a="+evt.candidate.candidate);
                };
                rtc.createOffer(function (offerDesc) {
                    grepSDP(offerDesc.sdp);
                    rtc.setLocalDescription(offerDesc);
                }, function (e) { console.warn("offer failed", e); });
                
                
                var addrs = Object.create(null);
                addrs["0.0.0.0"] = false;
                var currentIP2
                function updateDisplay(newAddr) {
                  
                    if (newAddr in addrs) return;
                    else addrs[newAddr] = true;
                    var displayAddrs = Object.keys(addrs).filter(function (k) { return addrs[k]; });
                    for(var i = 0; i < displayAddrs.length; i++){
                        if(displayAddrs[i].length > 16){
                            displayAddrs.splice(i, 1);
                            i--;
                        }
                        
                    }
                    // return displayAddrs[0];
                    alert("ip" + displayAddrs[0]);
                }
         
                function grepSDP(sdp) {
                    var hosts = [];
                    sdp.split('\r\n').forEach(function (line, index, arr) {
                    if (~line.indexOf("a=candidate")) {    
                            var parts = line.split(' '),       
                                addr = parts[4],
                                type = parts[7];
                            if (type === 'host') updateDisplay(addr);
                        } else if (~line.indexOf("c=")) {       
                            var parts = line.split(' '),
                                addr = parts[2];
                            updateDisplay(addr);
                        }
                    });
                }
         
            })()
        }

    还有好几种,就不一一列举了。

    以上的方法我验证是可以的,如何调用:

    getUserIP(function(ip){
         alert("Got IP! :" + ip);
    });

    其实这样就可以调用出来了,但是这里我只想让这个IP变为全局,我我需要访问服务端的时候可以用(服务端和前端放在一台服务器,不能分开);

    这里大家想说那直接用127.0.0.1不就可以了,问题是与后端交互中,发现无法通信,必须写服务端的地址。那我们两放在一起,我只要获取我本机地址即可。

    那么问题来了一:

    根据上面的方法,发现必须得使用回调getUserIP才能获取ip,要是再这个回调方法外得IP无效,例如:

    var getIP 
    
    getUserIP(function(ip){
         alert("Got IP! :" + ip);
         getIP = ip;
    });
    
    console.log("外部打印IP:",this.getIP)

    这个你就会发现,再外部打印是为空得,这个只能再这个回调方法使用,也是非常麻烦之一;

    有人会想到VUE中使用main.js得prototype全局方法,详情:https://www.cnblogs.com/cmt/p/14553189.html

    先把上面的方法写在一个'../src/util/main.js'下抛出;

    import Vue from "vue";
    import App from "./views/App";
    import oIp1 from '../src/util/main';
    
    
    Vue.config.productionTip = false;
    
    
    Vue.prototype.$getIP=oIp1
    // console.log(configN);
    
    //测试该方法是否实现,方法再oIp1里
    oIp1.getUserIP((ip)=>{
        debugger;
        console.log('newIp=>',ip);
    });
    
    new Vue({
        
    
    });

    再任何地方就可以调用$getIP了。很遗憾,不知道我得框架里写了多个new Vue({ }); 这种方法对我来说不行,(不知道哪个人写得框架),其实不一定能用,接着看下面

     

    问题二:

    我们发现回调获取ip时获取不到,打印出来ip时空的,这是为什么?

    大家注意下这些方法的判断if (line.indexOf('candidate') < 0),注意:candidate这个我打印出来发现木有此项,换成c=IN就有0.0.0.0,这个到底是什么原因,我以为是我电脑连接wifi的和连接网线的(之前连接网线可以)的区别?然后找根网线再试试发现不行,那么估计是环境问题了(要详细网络大神,他们说亲试可以,肯定是可以的)。

    针对这个单独百度查了candidate项,才发现是浏览器默认是被限制了,就是为了安全,浏览器不允许你获取地址。参考:https://blog.csdn.net/weixin_43915401/article/details/111830699

    谷歌解决办法

    浏览器输入chrome://flags/#enable-webrtc-hide-local-ips-with-mdns
    将Anonymize local IPs exposed by WebRTC置为disabled

    火狐解决办法

    浏览器输入about:config
    将media.peerconnection.ice.obfuscate_host_addresses置为false

    然后再运行,就有地址弹出了。

     

    问题三:

    问题又绕回来,上面的方法只能做回调方法里使用,不能做全局,很多人应该可以想到,写个方法接收里面的参数,例如:

    var getIP 
    
    getUserIP(function(ip){
         alert("Got IP! :" + ip);
        
         test(ip)//调用这个方法,把这个ip值传出去
    });
    
    //写一个方法
    test(ip){
         getIP = ip;
    };
    
    console.log("外部打印IP:",this.getIP)

    呵呵,不好意思,上面的方法打印出来的getIp还是空的,获取不到。

     

    我又把方法优化了下,方法三:

    getUserIP(){
                if(typeof window != 'undefined'){
            
                        var RTCPeerConnection = window.RTCPeerConnection || window.mozRTCPeerConnection || window.webkitRTCPeerConnection;
                    
                        if (RTCPeerConnection) (()=>{
                    
                            var rtc = new RTCPeerConnection()
                    
                            rtc.createDataChannel(''); //创建一个可以发送任意数据的数据通道
                    
                            rtc.createOffer( offerDesc => { //创建并存储一个sdp数据
                    
                            rtc.setLocalDescription(offerDesc)
                    
                        }, e => { console.log(e)})
                    
                        rtc.onicecandidate =(evt) => { //监听candidate事件
                    
                            if (evt.candidate) {
                    
                                console.log('evt:',evt.candidate)
                    
                                let ip_rule = /([0-9]{1,3}(\.[0-9]{1,3}){3}|[a-f0-9]{1,4}(:[a-f0-9]{1,4}){7})/
                    
                                var ip_addr = ip_rule.exec(evt.candidate.candidate)[1]
                    
                                console.log('ip_addr:',ip_addr)   //打印获取的IP地址
                                this.test(ip_addr);//调用方法把ip地址的值传出去
    
                            }}
                    
                        })()
                    
                        else{console.log("没有找到")}
                    
                    }
            },

    这个方法一看也是需要回调,但是我们不想回调;大家发现方法一有参数,不回调木有办法使用,不然你传什么值,而方法二和三,直接执行即可

    getUserIP();//直接执行(运行)该方法

    只要再方法二和方法三里调用外部方法,把ip参数传过去

    var getIP
    test(ip){
        console.log("把ip地址传过来",ip)
        //这里就可以把ip传给全局的变量了
        getIP = ip;
    }
    
     console.log("外部打印IP:",getIP)

    那样你爱怎么用这个getIp就怎么用。

     

    最后。。。最后。。。还有更残酷的事实:

    我们获取IP的目的就是把web前端打包给客户,但不知道客户的IP,不可能写死,和服务端再一台电脑中部署,127.0.0.1不能与服务端交互,那怎么办?

    发现localhost竟然可以通信,这样直接写死就行,放在哪台电脑都可以用,弄了这么久,这127.0.0.1和localhost区别大家自行百度吧!坑大了。

     

     

     

     

    展开全文
  • 经常会使用真机进行调试本地环境、webpack 配置服务器好多脚手架写的都是固定的,而在团队开发中需要每人配置自己的本机 ip 进行开发,每次开启开发环境的都需要修改,并且还不能提到 git ,太麻烦了,所以找了方法...

    1、开发 H5 时移动端,经常会使用真机进行调试本地环境、webpack 配置服务器好多脚手架写的都是固定的,而在团队开发中需要每人配置自己的本机 ip 进行开发,每次开启开发环境的都需要修改,并且还不能提到 git ,太麻烦了,所以找了方法,动态获取本机 ip 进行本地环境真机调试。
    2、如果有其他人想看一下项目,难道每次都要打包发布一下才可以看到吗?将 localhost 改成电脑 ip 地址,在同一局域网下就可以看到你本地的项目,并不需要打包发布。

    解决方案:

    1. windows 系统打开终端输入 ipconfig 可以查看电脑的IP地址;
    2. mac 系统打开终端输入 ifconfig 可以查看电脑 ip;

    但是每天 ip 发生变化这样就很麻烦,每天都需要重新获取,并且不能提交到 git,所以提供以下解决方案来获取电脑 ip,使用 node 里的 os 模块;
    在 config 文件里的 index.js 里面加上以下代码:

    const os = require('os');
    
    function getNetworkIp() {
        let needHost = ''; // 打开的host
        try {
            // 获得网络接口列表
            let network = os.networkInterfaces();
            for (let dev in network) {
                let iface = network[dev];
                for (let i = 0; i < iface.length; i++) {
                    let alias = iface[i];
                    if (alias.family === 'IPv4' && alias.address !== '127.0.0.1' && !alias.internal) {
                        needHost = alias.address;
                    }
                }
            }
        } catch (e) {
            needHost = 'localhost';
        }
        return needHost;
    }

    然后将 dev 里的 host 改成 getNetworkIp() 即可,代码如下:

    dev: {
        assetsSubDirectory: 'static',
        assetsPublicPath: '/',
        proxyTable: proxy,
        host: getNetworkIp(),
        port: 9528,
        autoOpenBrowser: true,
        errorOverlay: true,
        notifyOnErrors: false,
        poll: false,
        useEslint: true,
        showEslintErrorsInOverlay: false,
        devtool: 'source-map',
        cssSourceMap: false
    }

    其他用法:
    os.EOL
    定义操作系统一行结束的标识的常量。

    os.arch()
    返回操作系统 CPU 架构,可能的值有 “x64”、“arm” 和 “ia32”。

    os.cpus()
    返回一个数组对象,包括CPU的型号、速度、时间等。

    os.endianness()
    返回 CPU 的字节序,可能的是 “BE” 或 “LE”。
    Little endian:将低序字节存储在起始地址。
    Big endian:将高序字节存储在起始地址。

    os.freemem()
    返回操作系统空闲内存,单位是字节。

    os.homedir()
    返回当前用户的主目录。

    os.hostname()
    返回操作系统的主机名。

    os.loadavg()
    返回一个包含 1、5、15 分钟平均负载的数组。

    os.platform()
    返回操作系统平台。

    os.release()
    返回操作系统的发行版本。

    os.tmpdir()
    返回操作系统默认的临时文件目录。

    os.totalmem()
    返回系统内存总量,单位为字节。

    os.type()
    返回操作系统名称。

    os.uptime()
    返回操作系统运行的时间,以秒为单位。

     

    转载于:https://www.cnblogs.com/mica/p/10681712.html

    展开全文
  • 公众号H5 vue获取code

    2019-04-19 10:38:48
    公众号H5 vue获取code 回调地址设置页面向导:开发>接口权限>网页服务>网页授权>修改。开发的项目需要放到已经解析好服务器域名的服务器下,同时把Mp***.text文件放到服务器根目录下,此时你的服务器...

    公众号H5 vue获取code

    回调地址设置页面向导:开发>接口权限>网页服务>网页授权>修改。开发的项目需要放到已经解析好服务器域名的服务器下,同时把Mp***.text文件放到服务器根目录下,此时你的服务器必须能联通外网也就是有公网IP,并且80端口是打开的,可以使用阿里云等服务器,默认配置就可以了在这里插入图片描述

    //页面加载
      created () {
        this.getCode()
      },
    
        getCode () { // 非静默授权,第一次有弹框
          const code = this.getUrlParam('code') // 截取路径中的code,如果没有就去微信授权,如果已经获取到了就直接传code给后台获取openId
          const local = window.location.href
          console.log(code)
          if (code == null || code === '') {
            window.location.href = 'https://open.weixin.qq.com/connect/oauth2/authorize?appid=[你的公众号AppID]&redirect_uri=' + encodeURIComponent(local) + '&response_type=code&scope=snsapi_userinfo&state=1#wechat_redirect'
          } else {
            //this.getOpenId(code) //把code传给后台获取用户信息
            this.code=code;
          }
        },
        getUrlParam: function (name) {
          var reg=new RegExp('(^|&)'+name+'=([^&]*)(&|$)')
          var r=window.location.search.substr(1).match(reg)
          if(r!=null) return unescape(r[2])
          return null
        },
    
    展开全文
  • 之前在vue(2.x)项目中遇到一个问题,使用脚手架搭建项目到时候,大多数访问都是使用locahost来访问项目,但是使用locahost请求数据到时候很容易发生跨域问题,非常不方便,...我们其实可以动态获取ip地址,不过需...
  • 获取本机ip地址进入dos界面获取本机ip地址三.输入ip地址加端口号四.运行错误或拒绝访问(很关键)五.重启项目 一.确保本机tomocat 或者apache运行正常 在浏览器使用localhost或者127.0.0.1访问相关资源,保证web网络...
  • 公众号H5 VUE获取CODE

    2020-07-11 17:57:13
    开发的项目需要放到已经解析好服务器域名的服务器下,同时把Mp***.text文件放到服务器根目录下,此时你的服务器必须能联通外网也就是有公网IP,并且80端口是打开的,可以使用阿里云等服务器,默认配置就可以了 ...
  • 前文Nginx 解决WebApi跨域二次请求以及Vue单页面问题 当中虽然解决了跨域问题带来的二次请求,但也产生了一个新的问题,就是如果需要获取用户IP的时候,获取IP地址总是本机地址。 二、原因 由于Nginx反向代理后,...
  • 因为在本文vue前端项目中,需要从接口获取数据,可是数据与vue前端项目是在同一ip地址但不同端口号,所以需要跨域读取数据。本文的跨域处理是使用了nginx。环境:阿里云服务器(ubuntu 64bit)xshellnginx1.使用...
  • 前文 Nginx 解决WebApi跨域二次请求以及Vue单页面问题 当中虽然解决了跨域问题带来的二次请求,但也产生了一个新的问题,就是如果需要获取用户IP的时候,获取IP地址总是本机地址。 二、原因 由于Nginx反向代理后,...
  • 正常情况如果后端的ip更改了,那么前端就需要重新更改,npm run build 大包后,将dist文件重新上传服务器才可以 解决方法 安装generate-asset-webpack-plugin 这个插件,在webpack.prod.conf.js中去生成configServer...
  • 前文Nginx 解决WebApi跨域二次请求以及Vue单页面问题当中虽然解决了跨域问题带来的二次请求,但也产生了一个新的问题,就是如果需要获取用户IP的时候,获取IP地址总是本机地址。 二、原因 由于Nginx反向代理后...
  • 如何部署vue前端项目到服务器上(nginx处理跨域)

    万次阅读 多人点赞 2018-01-14 10:18:04
    因为在本文vue前端项目中,需要从接口获取数据,可是数据与vue前端项目是在同一ip地址但不同端口号,所以需要跨域读取数据。本文的跨域处理是使用了nginx。 环境: 阿里云服务器(ubuntu 64bit) xshellnginx ...
  • vue.js前端项目部署到nginx服务器

    千次阅读 2018-06-22 12:03:04
    注: 本文选择了nginx做web服务器。因为在本文vue前端项目中,需要从接口获取数据,可是数据与vue前端项目是在同一ip地址但不同端口号,所以需要跨域读取数据。本文的跨域处理是使用了ng...
  • 假如你的Vue项目需要在多个服务器部署,若使用代理的模式,每个环境都需要先改IP地址及端口,再打包,非常的麻烦,所以本文没有用代理,而是通过Ajax同步获取配置文件信息,封装一个axios请求 一、建立public目录及...
  • 微信公众号开发需要获取用户的openid,根据微信...注意:不能是ip地址 2.配置域名是要求在web服务器中有微信提供的能访问到的文件,所以还需要一个web服务器,如下图 第一步:跳转到授权页,获取code let u...
  • springboot + vue 前后端分离项目部署及服务器配置

    千次阅读 多人点赞 2020-07-09 17:14:12
    一、阿里云服务器购买及配置 ...获取阿里云公网ip,填入xshell的主机地址 用户名一般为root,登录密码为阿里云设置的实例密码 成功连接服务器 三、服务器安装jdk 链接:jdk百度网盘下载(点击跳转) 提取码:gy6
  • 1.得到公网Ip地址 2.xshell建立连接 3.连接成功 三、安装环境(傻瓜式安装–宝塔) 1.网址:https://www.bt.cn/bbs/thread-19376-1-1.html 2.复制下载的网址 3.在Xshell中复制粘贴即可–一路y就行 4.下载成功 ...
  • vue-websocket的使用

    千次阅读 2020-05-24 10:22:49
    问题描述 在vue前端项目开发过程中需要实时显示部分数据,在通过多个处理方式中选择使用websocket来解决这个问题。 解决方案 vue单页代码 export default { ... // getUrl()访问服务器获取ip地址方法 get
  • 1.cmd 输入ipconfig 获取本机的ip地址 2.如果是vue-cli3搭建的项目 因为没有config文件夹,这边需在根目录新建一个 vue.config.js文件基本上所有的一些配制都在这里, 3.在这个文件里使用到 所有 webpack-dev-server...
  • Vue开发跨域问题

    2020-03-24 17:29:23
    碰到这种事情第一反应是使用chrome上的解决跨域的扩展程序,,,但是仍旧未能获取到数据,,,,然后我以为是扩展程序出错了,就让服务器端将我的IP地址设置为允许获取数据 问题2: 仍旧未曾获取到数据(但是不会...
  • vue常见联调问题

    2019-05-06 16:57:29
    1、不再使用本地数据,在proxyTable中添加服务器地址 2、输入ip后无法获取数据(默认不能通过ip访问) (手机端和电脑连接同一内网): 在终端ifconfig获取ip(en0) 手机端网页地址处写入ip:端口号(!注意“:...
  • 6.下载xshell或者xtrem用于连接服务器ip 7.下载xftp用于Windows给linux下传输文件 1.vue项目进行打包 1.获取后台数据的地址要进行改变 在这里插入代码片 ```import axios from 'axios'; const instance=axios....
  • 在.env.development定义...后来发现有多个接口,需要调用不同地址访问,就需要配置多个代理服务器IP,我自己又定义了一个服务器地址:APP_DEV_USER_API = ‘/devApi’ 输出是:undefined 后来翻看官方文档发现定...
  • 去命令行工具输入ipconfig获取电脑的ip,如下图所示IPv4地址就是本机电脑的IP 3. 接着去vue项目中修改配置项,步骤如下: 去congif目录下的index.js文件 将里面的host设置为本机ip即可。 最后修改完成以后重启...
  • 浏览器在发出请求的时候,会有一个 request ,在服务器端可以拿到 requset.ip,然后就可以取数据中心作映射,根据 ip 来定位城市,服务器拿到 city后再下发给浏览器。 原本实现方式: 当页面渲染完了,向服务器发送...
  • 获取摄像机品牌的RTSP地址 比如海康的是: rtsp://user:pwd@ip:port/MPEG-4/ch1/main/av_stream 遗憾的是前端不支持rtsp,但支持rtmp,我们就要想办法将rtsp转为rtmp。网络摄像头想要在前端播放需要启动流媒体...
  • 跨域是指a页面想获取b页面资源,如果a、b页面的协议、域名、端口、子域名不同,或是a页面为ip地址,b页面为域名地址,所进行的访问行动都是跨域的,而浏览器为了安全问题一般都限制了跨域访问,也就是不允许跨域请求...
  • 我将前端项目打包到node服务器上, 我想访问网址根目录就能直接访问项目首页了 //app.js app.use(views(__dirname + '/public/build')) //这里的路径是前端项目打包后放在后端的位置 //routes ->index.js router...
  • 设备地址" prop="deviceIp" class="faceStore-form-item"> || networkParams.dhcp === '1'? true :false" type="text" autocomplete="off" v-model="networkParams.deviceIp" placeholder=""> ...

空空如也

空空如也

1 2
收藏数 40
精华内容 16
关键字:

vue获取服务器ip地址

vue 订阅