![](/img/trans.png)
[英]ActionController::RoutingError (No route matches [GET] "/assets/javascripts
[英]How do call a javascript file from another Rails project? ActionController::RoutingError (No route matches [GET] “/assets/trackmetrics.js”)
我目前正在測試我的API,該API在Assets文件夾(trackmetrics.js)中具有JS腳本。 我創建了另一個Rails應用進行測試,並且試圖從另一個URL localhost:3003調用trackmetrics.js文件
Trackmetrics應用位於localhost:3000上,而簡單應用位於localhost:3003上
我的簡單應用程序在視圖中具有以下代碼:
<h1>Welcome#index</h1>
<p>Find me in app/views/welcome/index.html.erb</p>
<%= javascript_include_tag "//localhost:3000/assets/trackmetrics.js" %>
<script>
Trackmetrics.setAuthToken('######################################');
Trackmetrics.send(“page_view”,{test: true});
</script>
Simple App是否可以獲取localhost:3000上Trackmetrics中的trackmetrics.js文件? 我同時運行了兩個應用程序,並且在測試時遇到以下錯誤:
Started GET "/assets/trackmetrics.js" for 127.0.0.1 at 2014-07-22 21:59:38 -0400
ActionController::RoutingError (No route matches [GET] "/assets/trackmetrics.js"):
我的Trackmetrics.js文件如下所示:
var Trackmetrics = {
authToken: null,
setAuthToken: function(auth_token) {
this.authToken = auth_token;
},
send: function(name, data) {
var _bm_request = new XMLHttpRequest();
_bm_request.open("POST", "http://localhost:3000/events.json", true);
_bm_request.setRequestHeader('Content-Type', 'application/json');
_bm_request.onreadystatechange = function() {
// this function runs when the Ajax request changes state.
// https://developer.mozilla.org/en-US/docs/Web/API/XMLHttpRequest
};
_bm_request.send(JSON.stringify({auth_token: this.authToken, name: name, data: data}));
}
}
另外,我嘗試設置config.serve_static_assets = false
並做了
rake assets:precompile...and I am still running into the error.
這不是一個應用程序調用另一個應用程序javascript的問題。 似乎:3000上的應用無法識別路線。 首先讓它在第一個應用程序上運行!
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.