小编dld*_*ian的帖子

Django 并在不同视图中向外部 API 发布请求

所以我想创建一个 Django 应用程序,我的用户可以在其中通过表单发布数据并向外部 API 发出发布请求,但在同一页面/视图中获得响应

例如,我有我的看法

class Home(TemplateView):
    template_name: 'home/index.html'
Run Code Online (Sandbox Code Playgroud)

我有我的 index.html:

<form id="formdata" >
    <select id="options">
        <option id="sku">Option 1</option>
        <option id="sku2">Option 2</option>
    </select>    

    <input name="number" type="text"  id="number">

    <select id="price">
        <option id="price1">$5</option>
        <option id="price2">%10</option>
    </select>    

    <button type="button" data-loading-text="enviando..." onclick="submitInfo()">Send</button>
</form>
Run Code Online (Sandbox Code Playgroud)

让我们忽略 HTML 可能是错误的事实,它是具有选择和输入字段的表单的基本结构,但请注意,我需要在 post 请求中传递“产品”、“数字”和“价格”作为参数。

问题是,当用户点击提交按钮时,他们向外部 api 发出发布请求,我知道我可以使用 fetch 使用 JavaScript 执行 int,但问题是我需要在正文中传递我的个人令牌密钥params,我也想隐藏真正的api url,用我的网站的url来隐藏它,例如:www.myurl.com/my-api-call

所以我正在考虑创建一个带有 post 请求的“external_api_view”,如下所示:

import requests
import time
from rest_framework import status
from rest_framework.response import Response

def external_api_view(request):
    if request.method == "POST":
        attempt_num = 0  # keep …
Run Code Online (Sandbox Code Playgroud)

javascript python api django django-rest-framework

3
推荐指数
1
解决办法
6226
查看次数

标签 统计

api ×1

django ×1

django-rest-framework ×1

javascript ×1

python ×1