【问题标题】:Ajax HTTP-request url not correctAjax HTTP 请求 url 不正确
【发布时间】: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 的解析方式。而且我认为&lt;form&gt;action 属性和&lt;a&gt;href 属性都是正确的,那么为什么不在这里呢?
  • 我想称它为错误,但也许是有原因的......我会看看我是否可以在 jsFiddle 中重现并让你知道
  • 不相关 - 您可能希望实现 XMLHttpRequestonreadystatechange 方法以获取 AJAX 调用的响应 - developer.mozilla.org/en-US/docs/DOM/XMLHttpRequest

标签: javascript ajax symfony-1.4


【解决方案1】:

尝试指定一个完整的 url 作为您的 POST 请求目标:

http://dev.server.com/account/login

【讨论】:

    猜你喜欢
    • 2011-08-12
    • 1970-01-01
    • 1970-01-01
    • 2012-03-20
    • 2016-07-03
    • 1970-01-01
    • 1970-01-01
    • 2014-01-09
    • 2013-01-20
    相关资源
    最近更新 更多