我是Django和Django REST
Framework的新手。我有以下序列化程序类,用于与其他信息一起上传文件。但是,当我使用上传的文件运行API端点时,结果是这样的:
HTTP 415 Unsupported Media Type
Allow: POST, OPTIONS
Content-Type: application/json
Vary: Accept
{
"detail": "Unsupported media type \"multipart/form-data; boundary=----WebKitFormBoundaryybZ07gjZAqvcsZw3\" in request."
}
我通过谷歌搜索努力解决了这个问题,但无法解决,因此这里是我的序列化程序和API视图。
序列化器:
class ExampleSerializer(serializers.Serializer):
example_id = serializers.IntegerField()
description = serializers.CharField(allow_blank=True)
example_file = serializers.FileField(allow_empty_file=True)
def create_requirement_line(self):
request = self.context['request']
requirement_line = ExampleService().example_method(
example_id=self.validated_data['example_id'],
description=self.validated_data['description'],
example_file=self.validated_data['example_file']
)
return requirement_line
视图:
class RequirementLineAPIView(BaseCreateAPIView):
serializer_class = ExampleSerializer
parser_classes = (FormParser,)
def post(self, request, format=None,*args, **kwargs):
serializer = self.get_serializer(data=request.data)
if serializer.is_valid():
try:
example_variable = serializer.example_method()
return Response(example_variable, status=status.HTTP_200_OK)
except ValidationError as e:
return Response(e.message, status=status.HTTP_400_BAD_REQUEST)
return Response(serializer.errors, status=status.HTTP_400_BAD_REQUEST)
如果要发送multipart / form-data,则应使用MultiPartParser而不是FormParser。
我知道已经有一个类似的问题,但它没有解决上述错误。 这是我在API控制器中的PUT操作,在中运行良好: 以下是我的网页上的代码: HTML 打字稿 我的服务是: 我还使用了尝试上述问题的答案,我将我的文件附加到中,但不幸的是,同样的错误。如果媒体类型中没有任何设置,如何修复此问题?
此服务从移动客户端接收多部分请求,并将请求传递给下游服务以上载图像。我在下游服务中看到415种不受支持的媒体类型 获取以下异常 我的下游服务的API签名 是否有人可以指导我的代码片段中的错误,或者是否有任何需要在vertx server或vertx web client中启用的设置? 谢谢尼蒂斯·戈亚尔
我已经在SO上找到了一些这样的问题,但它们似乎都没有解决我的特定问题,而且我无法自己找到解决方案。 下面是我得到的错误: 我通过一个 jQuery AJAX 请求发送此请求,如下所示: 这是我的Javaendpoint: 我看到一些人很幸运地将endpoint方法的参数更改为使用@FormDataParam而不是FormDataMultiPart(如这里所示),但我无法编辑Java类,因此我必须按
我正在使用泽西岛客户endpoint击SpringMVC REST控制器的图像上传功能。我收到以下异常: 我的控制器发布图像的方法: 我的REST控制器方法获取post数据: 有没有解决这个异常的方法?我已经按照以下堆栈解决方案进行了尝试,但仍然收到相同的异常。 Jersey客户端异常:找不到消息正文编写器 使用泽西岛发送多个文件:找不到多部分/表单数据的消息正文
Spring 5.0.7:MVC、数据、安全。我配置。