【JS】JS Url 解码,转Json,正则获取指定标签内的内容

7 篇文章 0 订阅
2 篇文章 0 订阅

JS Url 解码,转Json,正则获取指定标签内的内容

var url = 'http://127.0.0.1/html/login.html?kind=album%7cSixButAlbum&paramId=31&pos=100&_type=hd&epg_info=%3Cserver_ip%3E127.0.0.1%3C/server_ip%3E%3Cback_url%3Ehttp://127.0.0.1:8080/iptvepg/frame201/portal.jsp%3C/back_url%3E%3Cgroup_path%3E%3C/group_path%3E%3Coss_user_id%3E91559298644%3C/oss_user_id%3E%3Cpage_url%3Ehttp://127.0.0.1:8080/iptvepg/frame154/vas_to_epg.jsp%3C/page_url%3E%3Cpartner%3EZTE%3C/partner%3E%3Cgroup_id%3E2000085%3C/group_id%3E&user_name=91559298644&USERID=91559298644&USERTOKEN=1D10039900703230000090D8F3C39B25&fromLaunch=true';

**

## 方法1:

**
function backUrl(url){
    return JSON.stringify(url2json(decodeURI(url))).match(/<back_url>([\s\S]*?)<\/back_url>/)[1];
}
/**
 * 把url中的key=>value的内容以json对象返回
 * @param {*} url
 */
 function url2json(url) {
    if (url.indexOf('?') == -1) return '';
    var query = {};
    var array = [];
    var params = (url.split('?'))[1];
    array = params.split('&');
    var length = array.length;
    if (length > 0) {
        for (var i = 0; i < length; i++) {
            var index = array[i].indexOf('=');
            var key = array[i].substring(0, index);
            var value = array[i].substring(index + 1);
            query[key] = value;
        }
    }
    //如果没有元素则返回空
    return JSON.stringify(query) == '{}' ? '' : query;
}


**

## 方法2:

**
var test = "<server_ip>127.0.0.1</server_ip><back_url>http://127.0.0.1:8080/iptvepg/frame201/portal.jsp</back_url><group_path></group_path><oss_user_id>29072141723</oss_user_id><page_url>http://127.0.0.1:8080/iptvepg/frame154/vas_to_epg.jsp</page_url><partner>ZTE</partner><group_id>2000085</group_id>"
var objParam = getValue(test );
function getValue(value)
{
  var obj={}
  value.replace(/(?<=<([^\/]*)>).*?(?=(<\/.*>))/g, function (value, name) {
    obj[name] = value
  })
  return obj
}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值