嵌套HTTP GET参数(请求中的请求)

时间:2011-10-10 16:15:55

标签: http url parameters get nested

我想在父JSP的GET参数中调用带有GET参数的JSP。此网址为http://server/getMap.jsp?lat=30&lon=-90&name=http://server/getName.jsp?lat1=30&lon1=-90

getName.jsp将返回name getMap.jsp参数中的字符串。

我认为这里的问题是,网址末尾的&lon1=-90将提供给getMap.jsp而不是getName.jsp有没有办法区分哪个GET参数转到哪个网址?

我的一个想法就是对第二个网址进行编码(例如= - > %3D& - > %26)但是没有成功好。到目前为止,我最好的想法是只允许第二个URL中的一个参数,逗号分隔。因此,我将http://server/getMap.jsp?lat=30&lon=-90&name=http://server/getName.jsp?params=30,-90并将其留给getName.jsp来解析其变量。这样我只留下&

注意 - 我知道我可以从一个完全不同的角度处理这个问题并完全避免嵌套网址,但我仍然想知道(为了知识!)如果这是可能的,或者如果有人有做完了......

1 个答案:

答案 0 :(得分:0)

这已经做了很多,尤其是广告投放技术和网址重定向

但编码的URL应该可以正常工作。你需要完全编码它。可以找到生成器here

所以这个: http://server/getMap.jsp?lat=30&lon=-90&name=http://server/getName.jsp?lat1=30&lon1=-90

成为:http://server/getMap.jsp?lat=30&lon=-90&name=http%3A%2F%2Fserver%2FgetName.jsp%3Flat1%3D30%26lon1%3D-90

我确信jsp有这个功能。寻找“urlencode”。您的JSP将看到GET-Variable“name”的内容为未编码的字符串:“http://server/getName.jsp?lat1 = 30& lon1 = -90”