我正在使用 django 和 python 请求使用从该网站获得的授权标头和正文向该端点发出发布请求。我希望您能帮助解决这个问题并让这段代码正常工作。
class RechargeData(models.Model, Main):
user = models.ForeignKey(User, default=1,on_delete=models.CASCADE)
phone_number = models.CharField(validators=[Main.phone_regex], max_length=10)
network = models.CharField(choices=Main.OPERATORS, max_length=15)
plan = models.IntegerField(choices=Main.PLANS)
amount = models.DecimalField(max_digits=10, decimal_places=2)
我有包含 python 请求的 view.py 文件,如下所示
导入请求从 .forms 导入 json 导入 RechargeForm
def rechargedata(request):
url = "http://127.0.0.1:8000/api/data/"
payload = "{\"network\": network_id,\n\"mobile_number\": \"09037346247\",\n\"plan\": plan_id}"
headers = {'Authorization': 'Token 5fd60vcdfddfxddsssfddff9a0a8742d','Content-Type': 'application/json'}
response = requests.request("POST", url, headers=headers, data=payload)
if request.method == "POST":
form = RechargeForm(request.POST)
if form.is_valid():
phone_number = form.cleaned_data['phone_number']
network = form.cleaned_data['network']
amount = form.cleaned_data['amount']
plan = form.cleaned_data['plan']
form.save
context = RequestContext(request, {
'phone_number': response.data.mobile_number,
'network': response.data.network_id,
'mobile_number': response.data.network_id,
'plan': response.data.plan_id,
})
return render(request, 'embeds.html', {'context': context, 'form'; form})
else:
form = RechargeForm()
return render(request, 'index.html', { context, 'form': form})
此代码不起作用,并且肯定不会在这里得到正确的东西。
有人可以帮我吗?