[
https://issues.apache.org/jira/browse/SHINDIG-852?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
John Hjelmstad reopened SHINDIG-852:
------------------------------------
Reopening issue - turns out this solution wasn't quite right.
The primary reason chained proxy syntax exists is for embedded cached flash,
via the flash.js library. It generates a base="..." parameter that is used by
all relative resource loads done within the SWF. URIEncoding the entire
resource path leads to a notable problem in this case then: the flash.js code
generates an incorrect base URL.
Consider a SWF hosted natively on http://foo.com/my.swf. When embedded in
cached format via gadgets.flash.embedCachedFlash(...) its URL becomes:
http://gadgethost.com/gadgets/proxy/...params.../http%3E%2F%2Ffoo.com%2Fmy.swf
Thus, its base="..." parameter is:
http://gadgethost.com/gadgets/proxy/...params.../
...rather than:
http://gadgethost.com/gadgets/proxy/...params.../http://foo.com/
...as is needed. This could be remedied by updating flash.js alone, but there's
one additional wrinkle: if a relative resource loaded by the SWF contains URL
params, they are ignored because
org.apache.shindig.gadgets.servlet.ProxyServletRequest ignores the query string
altogether.
As such, the "real" fix is actually a policy rollback of the original
resolution of this issue: For chained syntax, %rawurl% must be passed, and
ProxyServletRequest needs to accommodate it directly.
The code for this is relatively simple: patch forthcoming.
> Chained syntax in proxy doesn't support URLs with query arguments
> -----------------------------------------------------------------
>
> Key: SHINDIG-852
> URL: https://issues.apache.org/jira/browse/SHINDIG-852
> Project: Shindig
> Issue Type: Bug
> Components: Java
> Reporter: John Hjelmstad
> Assignee: John Hjelmstad
> Fix For: trunk
>
> Attachments: shindig-852.patch
>
>
> When using the proxy's chained syntax, eg:
> http://gadget-server.com/gadgets/proxy/refresh=3600/[url]
> Query arguments are dropped when [url] contains any query params. This is
> true whether <url> is URI escaped or not.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.