构建一个需要使用jQuery params()
解析使用深层参数构建的URL的Android应用。
示例网址:
http://webapp.example.com/#params%5Bid%5D=33330&type=detail&channel=ss&view=Detail
结果应该是JSON,我可以将其输入Gson。手动解析不是最佳的;一般的解决方案更可取。
如何完成这项任务?
答案 0 :(得分:0)
JS / jquery的
url="http://webapp.example.com/#params%5Bid%5D=33330&type=detail&channel=ss&view=Detail";
delimatedString = url.substring(url.indexOf("#")+1,url.length); //remove everything before the #
var jsonObject = new Object();
$.each(delimatedString.split("&"), function(index, item) {//for loop to spit at the *&
//item is now in the syntax key=value
var keyValPair = item.split("="); //split each item at the = to seperate
var key = keyValPair[0];
var value = keyValPair[1];
jsonObject[key]=value;
});
的java
String delimatedStrings = url.substring("&"+1, url.length)
String[] keyValuePairs = delimatedString.split("&");
Map<String, String> map = new HashMap<String, String>();
for (String keyValuePair : keyValuePairs)
{
String key = delimatedString.split("=")[0];
String value = delimatedString.split("=")[1];
map.put(key, value);
}
PS。我没有编译java,你需要一个外部的lib来处理地图到JSON的转换。