【发布时间】:2019-10-11 01:10:24
【问题描述】:
我写了一个 Django Web 应用程序,这个项目有一个功能可以从客户端发出请求,这个请求有一个键,这个键是“令牌” 当我用 Postman 发送这个请求时,我的函数找不到“tokene”键,所以我编写了一个小的 python 代码来发送请求,这个代码是工作的! 当我使用 Postman 时,我的回答是“请发送令牌!”和 当我使用我的代码时,响应是一个 Json 为什么?
这是我的邮递员网址
http://localhost:8000/submit/expensequery?tokene=123456789
# its my python code
import requests
r = requests.post('http://localhost:8000/submit/expensequery/', data={'tokene':'123456789'})
print (r.url)
# its my webapplications function
def query_expenses(request):
if (request.POST.has_key('tokene')):
this_token = request.POST['tokene']
num = request.POST.get('num', 10)
this_user = get_object_or_404(User, token__token=this_token)
expenses =
expense.objects.filter(user_name=this_user).order_by('-date')
[:num]
expenses_serialized = serializers.serialize("json", expenses)
return JsonResponse(expenses_serialized, encoder=JSONEncoder, safe=False)
else:
return HttpResponse('please send token !')
#its my application urls.py
urlpatterns = [
url(r'^accant/',include('accant.urls')),
url(r'',include('web.urls')),
]+ static(settings.STATIC_URL, document_root=settings.STATIC_ROOT)
#its my web.urls.py
urlpatterns = [
url(r'^submit/expense/$',views.expense_func),
url(r'^submit/income/$',views.income_func),
url(r'^submit/expensequery/?$',views.query_expenses),
url(r'^/test/',views.test),
]
urlpatterns += static(settings.STATIC_URL, document_root=settings.STATIC_ROOT)
【问题讨论】:
-
可能是因为你在邮递员中使用了
GET方法。 -
@Rakesh 不,我选择帖子,我的功能是 require_POST
标签: python django post request postman