如何从请求字符串中的参数值中提取相对URL?
我有一个请求url / string var之类的
http://ip_or_url:4773/image_renderer.service?action=resize&from_format=png&from_url=http://ip_or_url:4773/my_file.user.file&to_format=jpg&w=1920&h=1200`
它看起来非常可怕。 我想知道如何从中提取以下参数对,然后从该对值my_file.user.file
提取相对file_url
from_url=http://195.19.243.13:4773/my_file.user.file ?
用纯javascript。 它将返回一组键/值对。
function getUrlParts(url){ // url contains your data. var qs = url.indexOf("?"); if(qs==-1) return []; var fr = url.indexOf("#"); var q=""; q = (fr==-1)? url.substr(qs+1) : url.substr(qs+1, fr-qs-1); var parts=q.split("&"); var vars={}; for(var i=0;i
如果您的任何测试用例失败,请告诉我。
当url在变量sUrl
:
var sFromUrl = sUrl.match(/from_url=[^&]*/)[0]; var sBasename = sFromUrl.match(/[^\/]*$/)[0];
另见本例 。
使用它来获取JS中的url变量
function getUrlVars() { var vars = [], hash; var hashes = window.location.href.slice(window.location.href.indexOf('?') + 1).split('&'); for(var i = 0; i < hashes.length; i++) { hash = hashes[i].split('='); vars.push(hash[0]); vars[hash[0]] = hash[1]; } return vars; }
然后string.substring(string.search("/"))
来获取你的字符串