我正在使用Grape on Rails 4.2构建API.这是
GitHub的回购链接.
在前端,我有一个用EmberJS构建的JavaScript应用程序.这里是GitHub的回购链接.
我已经更新了以下宝石,以便我可以按照JSON API标准格式化我的API的响应,这似乎需要更新到Ember 1.13,然后更新到Ember 2.0.
gem "active_model_serializers",'0.10.0.rc2' gem "grape" gem "grape-active_model_serializers",:git => 'https://github.com/jrhe/grape-active_model_serializers.git'
之后,当我调用API时出现以下错误:IOError:未打开进行读取
根据我在这里和那里收集的信息,我怀疑这与我格式化JSON的方式存在冲突.
在default.rb中,当我对此行进行注释时,继承所有API控制器的文件:
formatter :json,Grape::Formatter::ActiveModelSerializers
我不再有任何错误,但显然响应没有序列化.
我的问题是:
>你知道我怎么解决这个问题吗?
>您认为使用Grape在我的Rails应用程序中构建API是否相关?随着Rails 5的到来,使用rails-api并重写整个应用程序并不是更好吗?我的意思是,我刚开始,这可能是正确的时间……
如果您需要更多信息,请与我们联系.
在此先感谢您的帮助.
解决方法
我最终使用jsonapi-resources重写了整个API.