簡體   English   中英

從Django向外部API REST發送FILE

[英]Sending FILE to a External API REST from Django

我正在嘗試將一個文件從DJANGO FORM發送到API REST服務,如果我只發送它工作的文本,但我需要發送一個文件,我嘗試了所有我發現但我不工作。

這是我的表格:

class Publicacion(forms.Form):

publicacion = forms.CharField(label=False,  widget=forms.Textarea(attrs={'rows': '3', 'cols': '40'}))
imagen = forms.FileField(required=False)

這是該表單的html:

            <form name="publicion" enctype="multipart/form-data" id="publicacion" method="POST">{% csrf_token %}
            <div class="post post_form" style="padding:0;">
                {{ formpublicar|crispy }}
                <button class="post_form_extra"></button>
                <input value=" " type="submit" class="post_form_submit" name="publicar"/>
            </div>

            </form>

這是我的views.py方法:

def sesionactiva(request):
if 'token' in request.session:
    token = request.session['token']
    crearpublicacion = Publicacion(request.POST or None, request.FILES or None)
    if 'publicar' in request.POST and request.POST['publicar']:
        if crearpublicacion.is_valid():
            publicacion_data = crearpublicacion.cleaned_data
            publicaciontexto = publicacion_data.get("publicacion")
            imgpublicacion = request.FILES['imagen']
            apipublicar = 'http://localhost/apiSocial/publicacion/createPublication'
            payloadpublicacion = {'token': token, 'texto': publicaciontexto, 'imagen': imgpublicacion}
            responsepublicacion = requests.post(apipublicar, data=payloadpublicacion)
            crearpublicacion = Publicacion()

您應該使用這樣的requests

requests.post(url, files=files, data=data)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM