【发布时间】:2012-10-28 17:57:54
【问题描述】:
以下 javascript 代码:
<script type="text/javascript" charset="utf-8">
function goForLogin() {
var xmlhttp;
xmlhttp=new XMLHttpRequest();
xmlhttp.open("POST","/account/login",true);
xmlhttp.setRequestHeader("Content-type","application/x-www-form-urlencoded");
xmlhttp.send("email=test%40test.com&password=1");
}
</script>
我在模块 test/index 中运行此代码 - 我必须这样做!
当我使用 tampadata 记录请求时,URL 是 http://dev.server.com/test/account/login。如何摆脱网址中的test?两次不同的模块。这是不正确的!
当我在 xmlhttp.open... "dev.server.com/account/login/" 中执行时,输出将是:http://dev.server.com/test/dev.server.com/account/login/。
【问题讨论】:
-
你试过
http://dev.server.com/account/login/吗?我只是想知道绝对路径是否可行 -
愚蠢,就是这样。有时我不明白,但非常感谢!
-
嗯,我不认为这是一个解决方案!我们现在知道它可以工作,但是如果你不能生成绝对路径会发生什么?人们依赖于以“/”开头和不以“/”开头的相对路径,这应该产生不同的结果。在我看来,使用“/account/login”应该产生“dev.server.com/account/login”,而使用“account/login”应该产生“dev.server.com/test/account/login”——因为URL 的解析方式。而且我认为
<form>的action属性和<a>的href属性都是正确的,那么为什么不在这里呢? -
我想称它为错误,但也许是有原因的......我会看看我是否可以在 jsFiddle 中重现并让你知道
-
不相关 - 您可能希望实现
XMLHttpRequest的onreadystatechange方法以获取 AJAX 调用的响应 - developer.mozilla.org/en-US/docs/DOM/XMLHttpRequest
标签: javascript ajax symfony-1.4