Django返回HTTP 301?

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/Kwoky/article/details/89111643

通过浏览器可以正常访问django页面,而通过http.client请求django的页面,却返回301:
[08/Apr/2019 21:26:06] "GET /logtest/logging?name=__main__&msg=This+is+a+log+info&args=%28%29&levelname=INFO&levelno=20&pathname=E%3A%2FPython%2F%E4%BB%A3%E7%A0%81%2Fscrapy%2F00python%2F08%E6%A1%88%E4%BE%8B%EF%BC%9Alogging%E6%97%A5%E5%BF%97%E5%8F%91%E9%80%81Http%E6%9C%8D%E5%8A%A1%E5%99%A8.py&filename=08%E6%A1%88%E4%BE%8B%EF%BC%9Alogging%E6%97%A5%E5%BF%97%E5%8F%91%E9%80%81Http%E6%9C%8D%E5%8A%A1%E5%99%A8.py&module=08%E6%A1%88%E4%BE%8B%EF%BC%9Alogging%E6%97%A5%E5%BF%97%E5%8F%91%E9%80%81Http%E6%9C%8D%E5%8A%A1%E5%99%A8&exc_info=None&exc_text=None&stack_info=None&lineno=32&funcName=%3Cmodule%3E&created=1554729966.6445692&msecs=644.5691585540771&relativeCreated=19.544363021850586&thread=6336&threadName=MainThread&processName=MainProcess&process=18348 HTTP/1.1" 301 0

解决方案:
url尾部收了"/",加上就OK了:
import http.client
con = http.client.HTTPConnection('192.168.0.105:8080')
con.request("GET", "/logtest/logging/",'',{})
resu = con.getresponse()
print(resu.status,resu.reason,resu.info())  #打印读取到的数据

#打印读取的数据
print (resu.read())

或者Django setings.py配置文件中设置参数为 APPEND_SLASH = True。 作用就是自动在网址结尾加'/'。

猜你喜欢

转载自blog.csdn.net/Kwoky/article/details/89111643
301
今日推荐