我正在开发一个包含REST请求的搜索机制。
有一个输入表单,可以接受产品标题:
Macbook Pro
iPhone-6
Jack's iPad
我需要以静止格式(作为链接的一部分)将这些标题发送到服务器,例如:
Macbook+Pro
iPhone???6
Jack???s-iPad
是否有库或使用javascript进行此转换的方法? (*我不能使用json)
感谢您的时间。
答案 0 :(得分:1)
如果我理解正确,您希望将搜索词传达给REST服务吗?
假设您的Macbook+Pro
示例未指明搜索运算符,您只需对参数进行编码,以便将值正确嵌入到URL中。
例如https://www.google.nl/search?q=These are search arguments将成为 https://www.google.nl/search?q=These%20are%20search%20arguments 。
那个,或者你做一个包含正文的POST(例如<form>
提交<input>
个控件。)
使用普通javascript(jsFiddle)编码示例:
var searchTerms = 'Macbook Pro';
var searchTermsEncoded = encodeURIComponent(searchTerms);
var url = 'https://www.google.nl/search?q=' + searchTermsEncoded;
console.debug(url); // https://www.google.nl/search?q=Macbook%20Pro
同样,Jack's iPad
变为Jack%27s+iPad
。
根据您使用的后端类型,您的服务器将为您解码,或者您必须手动执行此操作。无论哪种方式,您最终都会得到用户输入的原始输入字符串。