用django读取带有哈希符号的URL

时间:2018-04-26 13:50:35

标签: django

我有这个功能:

def facebook_forward(request):
    return HttpResponse(request.build_absolute_uri()) 

当我到达此页面时,例如:

  

http://myapp.com/?a=a

该函数返回相同的url,但是当我到达此页面时:

  

http://myapp.com/#?a=a

它让我回复:

  

http://myapp.com/

如何在hash hash symbool之后获取文本?

1 个答案:

答案 0 :(得分:3)

你不能。 #之后的部分无法发送到服务器。

#被称为fragment identifier后的部分仅供浏览器使用

  

URL的Fragment组件是来自哈希的URL的末尾   符号(#)向前。 URL片段永远不会发送到服务器中   HTTP请求 - 仅在页面中运行的JavaScript可以看到它们。所以,   当您的浏览器加载上面的URL时,服务器只能看到   请求中有“http://www.facebook.com”,这是责任   返回页面中的JavaScript来检查要查找的URL   片段中的额外信息。

来源:https://blogs.msdn.microsoft.com/ieinternals/2011/05/16/url-fragments-and-redirects/