js从请求路径中根据参数名获取参数值

URL参数解析技巧
本文介绍了一种通过JavaScript从URL中提取特定参数值的方法,提供了三种不同的函数实现,帮助开发者轻松获取地址栏上的参数。

从地址栏上获取地址,且根据参数名获取值

    getQueryString:function(name) {
        var reg = new RegExp('(^|&)' + name + '=([^&]*)(&|$)', 'i');
        var r = window.location.search.substr(1).match(reg);
        if (r != null) {
            return unescape(r[2]);
        }
        return null;
    }

或者 

 getParam:function(name){
      var reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)");
      var r = window.location.search.substr(1).match(reg);
      if(r != null) return decodeURIComponent(r[2]);
      return null;
 }

或者

getQueryStringByName:function(name){
   var result = window.location.search.match(new RegExp("[\?\&]" + name+ "=([^\&]+)","i"));
   if(result == null || result.length < 1){
      return "";
   }
   return result[1];
}

使用方法:

    var value = this.getQueryString('fightId')

根据名称获取地址字符串中的参数值

getParam:function(url,name){
    var reg = new RegExp("(^|\\?|&)"+ name +"=([^&]*)(\\s|&|$)", "i");
    if (reg.test(url)) return unescape(RegExp.$2.replace(/\+/g, " "));
    return "";
},

使用

var value = this.getParam("http://www.maoyupeng.com?weibo=hongtu1993@sina.cn","weibo");

// 输出: hongtu1993@sina.cn

 

在Vue3中从HTTP请求的头部获取参数,通常可以通过Axios库来实现。Axios是一个流行的HTTP客户端,可以轻松地发送请求并处理响应。以下是一个示例,展示了如何在Vue3中使用Axios从HTTP请求的头部获取参数: 1. 首先,确保你已经安装了Axios。如果没有安装,可以使用以下命令进行安装: ``` npm install axios ``` 2. 创建一个Axios实例,并设置一个拦截器来获取响应头中的参数: ```javascript import axios from 'axios'; const instance = axios.create({ baseURL: 'https://api.example.com', // 替换为你的API基础URL }); // 拦截器 instance.interceptors.response.use( response => { // 从响应头中获取参数 const headerParam = response.headers['your-header-param']; // 替换为你要获取的头部参数 console.log('Header Parameter:', headerParam); return response; }, error => { return Promise.reject(error); } ); ``` 3. 在组件中使用这个Axios实例发送请求: ```javascript <template> <div> <button @click="fetchData">Fetch Data</button> </div> </template> <script> import axios from '@/path/to/your/axios-instance'; // 替换为你的Axios实例路径 export default { methods: { async fetchData() { try { const response = await axios.get('/your-endpoint'); // 替换为你的请求路径 console.log('Response Data:', response.data); } catch (error) { console.error('Error:', error); } }, }, }; </script> ``` 在这个示例中,我们首先创建了一个Axios实例,并在拦截器中从响应头中获取参数。然后,在组件中使用这个实例发送请求,并在响应处理函数中访问头部参数
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值