Django参数在遇到第一个问号时停止打印
我最近在学习Django这个框架,感觉它在网页开发方面非常不错!
在我的views.py文件里,有这样一个视图:
def callerview(request,paramm):
text="this is what was sent : %s"%paramm
return HttpResponse(text)
在urls.py文件中,这个视图的URL是这样的:
urlpatterns = [
path('callerview/<str:paramm>/', views.callerview, name='callerview'),
]
现在,我把一个文字问题作为'paramm'传给它。这个功能正常,可以在本地服务器上打印出文字问题。但是,如果这个问题里有问号,它在遇到第一个问号时就停止打印了。
比如,如果URL是这样的: callerview/为什么玫瑰是红色的?为什么天空是蓝色的?
那么在本地服务器的输出中,我只会看到:为什么玫瑰是红色的 而且 后面就没有了!
我需要能够获取到文字问题中的所有符号和字母!这样才能把它们发送给OpenAi助手的API。
有没有什么建议可以让我在打印文字问题时保留问号这个符号呢?
1 个回答
1
在HTTP网址中,问号是一个特别的符号。[RFC 1738] 它表示查询参数的开始。
在你的例子中,网址参数到问号?的位置就结束了,从那里开始就是查询参数。Django只是遵循了网址的规范。