我正在尝试以这种方式传递另一个链接:
http://www.1st_site.com/?u=http://www.2nd_site.com/?parameter1=xyz
我认为问题是什么,parameter1=xyz 作为 1st_site 的参数传递
有什么办法可以避免这种情况吗?
最佳答案
您需要URL-encode表示为查询参数值的整个 URL,否则它将被解释为请求 URL 的一部分,因此这部分:http://www.2nd_site.com/?parameter1=xyz
。
目前尚不清楚您使用的是什么编程语言,但大多数不错的基于网络的语言都提供了实现此目的的函数/方法/类,例如Java 中的 URLEncoder
,JSP/JSTL 中的 c:url
和 c:param
,PHP 中的 urlencode()
和 JavaScript 中的escape()
。
这里至少有一个在线 URL 编码器:http://meyerweb.com/eric/tools/dencoder/ 。如果您输入 http://www.2nd_site.com/?parameter1=xyz
,您应该得到 http%3A%2F%2Fwww.2nd_site.com%2F%3Fparameter1%3Dxyz
code> 返回,因此请求 URL 应有效地结束于:
http://www.1st_site.com/?u=http%3A%2F%2Fwww.2nd_site.com%2F%3Fparameter1%3Dxyz
关于html 传递一个链接并在链接内获取参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2534251/