我正在使用MobX的React应用程序上工作,并且在实现Delete HTTP请求时遇到问题。其他所有请求都可以正常工作。
MobX存储操作:
try {
await agent.Artworks.delete(id);
this.artworkRegistry.delete(id);
} catch (error) {
console.log(error);
}
};
代理方法:del: (url: string) => axios.delete(url).then(responseBody)
delete: (id: string) => requests.del(`/artworks/${id}`)
命令处理程序:
{
public class Delete
{
public class Command : IRequest
{
public Guid Id { get; set; }
}
public class Handler : IRequestHandler<Command>
{
private readonly DataContext _context;
public Handler(DataContext context)
{
_context = context;
}
public async Task<Unit> Handle(Command request, CancellationToken cancellationToken)
{
var artwork = await _context.Artworks.FindAsync(request.Id);
if (artwork == null)
throw new Exception("Could not find artwork");
_context.Remove(artwork);
var success = await _context.SaveChangesAsync() > 0;
if (success) return Unit.Value;
throw new Exception("Problem saving changes");
}
}
}
}
控制台给我以下错误:Object { data: {…}, status: 415, statusText: "Unsupported Media Type", headers: {…}, config: {…}, request: XMLHttpRequest }
我想念什么?
您发送的请求格式错误。您收到415
响应错误,它是:415不支持的媒体类型
这意味着服务器拒绝处理请求,因为它无法识别请求所采用的格式。因此,也可能服务器配置错误。尝试将请求发送到应用程序外部(通过使用curl
的终端),然后查看收到的响应类型。
您可以在MDN 415 Unsupported Media Type上阅读更多内容