我正在开发一个带有动态模块的Rails应用程序 - ajax - 图像上传到图库.我正在基于这个应用程序 - 多文件上传 - 演示.我不是很喜欢Javascript和东西,所以我从该实现中复制了很多逻辑.
我根据rounders demo的所有逻辑构建了我的应用程序,我已经包含了所有的gems和javascript库,并且出现了错误:
Uncaught TypeError: Cannot read property 'innerHTML' of null
Run Code Online (Sandbox Code Playgroud)
在chrome控制台中,它引用了tmpl.js文件
tmpl.load = function (id) {
return document.getElementById(id).innerHTML;
};
Run Code Online (Sandbox Code Playgroud)
我对JS的了解并没有让我明白哪一段代码触发了这个功能,所以我可以更进一步.
你能告诉我调查这个问题根源的下一步是什么?我预计潜在的原因可能会有所不同,所以我不想粘贴应用程序中的所有代码.
我有奇怪的情况.我有一个RoR应用程序,它提供了我从Java应用程序连接的REST API.
我正在本地开发RoR,并在Heroku环境中部署它.
无论如何(我尝试从Java APP,Mozilla REST客户端等)我尝试发送应该由api控制器中的create action处理的POST HTTP请求.在localhost上 - 一切都按预期工作.在Heroku生产环境中 - POST请求被视为正常的GET.
以下是此资源的路线:
api_v1_items GET /api/v1/items(.:format) api/v1/items#index {:format=>:json}
POST /api/v1/items(.:format) api/v1/items#create {:format=>:json}
api_v1_item GET /api/v1/items/:id(.:format) api/v1/items#show {:format=>:json}
PATCH /api/v1/items/:id(.:format) api/v1/items#update {:format=>:json}
PUT /api/v1/items/:id(.:format) api/v1/items#update {:format=>:json}
DELETE /api/v1/items/:id(.:format) api/v1/items#destroy {:format=>:json}
Run Code Online (Sandbox Code Playgroud)
所以我正在尝试POST请求/api/v1/items传递所有必要的参数.
在localhost中,响应是正确的:
Started POST "/api/v1/items?token=l4XOHrhDApPqTp1u4TxBjQ" for 127.0.0.1 at 2014-05-15 22:11:49 +0200
Processing by Api::V1::ItemsController#create as JSON
Parameters: {"height"=>10.0, "item_name"=>"Super item", "width"=>20.0, etc...
Run Code Online (Sandbox Code Playgroud)
然而,同样的请求在Heroku被解雇为GET:
2014-05-15T20:27:58.137541+00:00 app[web.1]: Started GET "/api/v1/items?token=iEdDkDLiDUlWi0mDbr6XYw" for 89.74.57.51 at 2014-05-15 20:27:58 +0000
2014-05-15T20:27:58.223620+00:00 app[web.1]: Processing by Api::V1::ItemsController#index …Run Code Online (Sandbox Code Playgroud)