wit*_*ith 2 asp.net iis url silverlight encoding
我有一个深度链接的Silverlight RIA尝试使用Twitter OAuth回调.RIA中回调"页面"的URL是:
http://example.com/RiaTestPage.aspx#callback
Run Code Online (Sandbox Code Playgroud)
只要#符号是URL编码,Twitter就会回拨此URL; 所以我提供给Twitter的回调网址是:
http://example.com/RiaTestPage.aspx%23callback
Run Code Online (Sandbox Code Playgroud)
RiaTestPage.aspx当然存在,但是当Twitter回调这个URL时,我得到一个404(来自VS 2010 ASP.NET开发服务器)
'/'应用程序中的服务器错误
无法找到该资源.
说明:HTTP 404.您要查找的资源(或其中一个依赖项)可能已被删除,名称已更改或暂时不可用.请查看以下网址,确保拼写正确.
请求的URL:/RiaTestPage.aspx#callback
虽然#符号已在上面的错误消息中正确解码,但404似乎是编码#符号的结果.如果我手动更改导致404的回调网址,
http://example.com/RiaTestPage.aspx%23callback
Run Code Online (Sandbox Code Playgroud)
对此:
http://example.com/RiaTestPage.aspx#callback
Run Code Online (Sandbox Code Playgroud)
RIA中的回调页面正常加载.为什么我在这种情况下收到404?
您收到404错误,因为该#callback部分不是URL的一部分.它是浏览器使用的书签,它从未在请求中发送到服务器.如果对哈希进行编码,则它将成为文件名的一部分,并且没有名为的文件RiaTestPage.aspx#callback.
| 归档时间: |
|
| 查看次数: |
2161 次 |
| 最近记录: |