我正在使用库json-api在我的凤凰应用程序中编写ja_serializer投诉api。该请求仅通过:api管道路由,如下所示:
/
控制器/动作基本上是:
**
只有在尚未设置pipeline :api do
plug :accepts, ["json-api"]
plug JaSerializer.ContentTypeNegotiation
end
响应头的情况下,插件“JaSerializer.ContentTypeNegotiation”才会在defmodule MyApp.Api.DataController do
use MyApp.web, :controller
def show(conn, params) do
query = # build a query
render(conn, Repo.one query)
end
end
挂钩中写入正确的content-type
响应头。出于某种原因,before_send
标题被凤凰城中的某些代码或插件或接受插件或其他东西设置为“application / octet-stream; charset = utf-8”。
我不想写一个只关注正确内容类型的插件。导致这种情况的原因以及如何确保在调用JaSerializer.ContentTypeNegotiation插件时未设置content-type
标头?