关于一个用chicagoboss和otp19运行的网站,我有三个文件: index.html,config.js和zeus_config_controller.erl,这三个文件以前一直工作得很好,但是当我把这些文件复制到一个新的服务器上并在这个新的服务器上运行网站后,问题就出现了。
似乎chicagoboss无法再将请求从js文件连接到erl文件,日志显示:
14:12:25.360 [info] GET /config/function1/paramX [zeus] 200 98ms
14:12:25.404 [info] GET /config/function2/paramY [zeus] 200 108ms现在,在这两行日志之间没有像以前一样的erl日志。有没有人可以建议我是否需要在某个地方做任何配置?我还没有做任何与这个chicagoboss相关的配置。
非常感谢。
发布于 2018-02-24 20:52:23
看看下面的例子能不能正常工作:
zeus/src/controller/zeus_config_controller.erl:
-module(zeus_config_controller, [Req]).
-compile(export_all).
index('GET', []) ->
{ok, []}.
get_data('GET', []) ->
{json, [{a, 1}, {b, 2}] }.zeus/src/view/config/index.html:
<html>
<head>
<title>{% block title %}Config{% endblock %}</title>
<!-- jquery cdn: --!>
<script src="http://code.jquery.com/jquery-3.3.1.js"
integrity="sha256-2Kok7MbOyxpgUVvAk/HJ2jigOSYS2auK4Pfzbm7uH60="
crossorigin="anonymous"></script>
<!-- zeus js: --!>
<script src="/static/js/myjs.js"></script>
</head>
<body>
{% block body %}
<div id="results">results</div>
<div><button id="button1" type="button">Click me</button></div>
{% endblock %}
</body>
</html>zeus/priv/static/js/myjs.js:
function on_button_click() {
$.get("/config/get_data", function(data) {
$("#results").text(data.a + data.b);
});
}
$(document).ready( function() {
$("#button1").click(on_button_click);
});在浏览器中输入以下url:
http://localhost:8001/config/index然后单击该按钮。你看到什么?你的浏览器的js控制台有什么错误吗?
14:12:25.360信息GET /config/function1/paramX zeus 200 98ms 14:12:25.404 info GET /config/function2/paramY zeus 200 108ms
现在,在这两行日志之间没有像以前一样的erl日志。
当我在上面的示例中输入http://localhost:8001/config/index时,我看到以下输出:
...
...
07:05:42.421 [info] GET /config/get_data [zeus] 200 40ms
07:05:42.435 [info] GET /config/index [zeus] 200 55ms这对我来说没有多大意义,因为我的代码中没有任何内容显式地向/config/get_data发送GET请求。然后,当我单击页面上的按钮时,我会看到:
...
...
07:06:11.231 [info] GET /config/get_data [zeus] 200 26ms应为...as。
https://stackoverflow.com/questions/48943304
复制相似问题