程序问答   发布时间:2022-06-02  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了使用 javascript 在 django-rest-framework 服务器上发布图像的正确方法是什么?大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。

如何解决使用 javascript 在 django-rest-framework 服务器上发布图像的正确方法是什么??

开发过程中遇到使用 javascript 在 django-rest-framework 服务器上发布图像的正确方法是什么?的问题如何解决?下面主要结合日常开发的经验,给出你关于使用 javascript 在 django-rest-framework 服务器上发布图像的正确方法是什么?的解决方法建议,希望对你解决使用 javascript 在 django-rest-framework 服务器上发布图像的正确方法是什么?有所启发或帮助;

我有一个 POST API 视图,它接受图像和样式字符串并返回样式图像。 它在邮递员身上工作得很好,但我无法使用 fetch API 让它工作。

序列化器:

class Getimageserializer(serializers.serializer):
    image = serializers.ImageFIEld()
    style = serializers.CharFIEld()

DRF 视图:

class Postimage(APIVIEw):
    serializer_class = Getimageserializer
    parser_classes = [MultiPartParser]
    
    def post(self,request,format=NonE):
        print(request.data) # DeBUG
        img = request.data.get('image')
        # Process
        response = fileResponse(img)
        return response

获取调用:

Json = {}
Json["image"] = this.state.image
Json["style"] = "models\\wave\\wave200.pth"
console.log("sending --- ",Json) //deBUG

fetch('/style_transfer/style/',{
        headers: { "Content-type": "multipart/form-data; boundary=----WebKitFormBoundary7MA4YWxkTrZu0gW" },body: Json,method: "POST"
    }
).then(response => {
    if (!response.ok) {
        console.log("Couldn't fetch image")
    }
    return response.Json()
})
.then(data => {
    console.log("fetched data")
    console.log(data)

控制台日志的输出。这表明正确的数据在Json字典中

使用 javascript 在 django-rest-framework 服务器上发布图像的正确方法是什么?

但是数据没有被 DRF 服务器接收。 视图中的 print(request.data) 返回 <queryDict: {}>。 奇怪的是,同样的代码与邮递员一起工作。

我尝试过的事情:

  • 从提取请求中移除 headers - 这会引发不支持的媒体类型错误
  • 将 content-type 设置为 "application/Json" - 这会读取字符串参数,但图像键为空。这就是request.data的样子{'image': {},'style': 'models\\wave\\wave200.pth'}

我想了解导致此问题的原因。我已经阅读了几个类似的主题,但我找不到推荐的方法来做这样的事情。那么,有什么问题?推荐的做法是什么?

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)

大佬总结

以上是大佬教程为你收集整理的使用 javascript 在 django-rest-framework 服务器上发布图像的正确方法是什么?全部内容,希望文章能够帮你解决使用 javascript 在 django-rest-framework 服务器上发布图像的正确方法是什么?所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。