https url上的ajax url帖子

时间:2015-01-25 12:43:54

标签: php ajax

由于我在网站上使用SSL连接,我正在尝试检查用户打开网址的端口(http / https):

if (isset($_SERVER['HTTPS']) &&
    ($_SERVER['HTTPS'] == 'on' || $_SERVER['HTTPS'] == 1) ||
    isset($_SERVER['HTTP_X_FORWARDED_PROTO']) &&
    $_SERVER['HTTP_X_FORWARDED_PROTO'] == 'https') {
  $protocol = 'https://';
}
else {
  $protocol = 'http://';
}

它适用于css和js等外部文件的链接。

但是,通过检查端口,我无法使用ajax发布内容。

 <input type='submit' value="LOGIN" onclick="return checkLogin()">

        function checkLogin() {
            var cUsername = $('[id$=userEmail]').val();
            var cPassword = $('[id$=userPassword]').val();
            var cartItems = cartItemsToJSON();

            var dataString = "username=" + cUsername + "&password=" + cPassword  + "&cartItems=" + cartItems;
            $.ajax({
                type: "POST",
                url: "<?php echo $protocol; ?>"+location.hostname+" /member/actions/config-login2.php",
                data: dataString,
                cache: true,
                success: function(html) {

当我点击登录时,它不会运行到`config-lgin2.php,但它只在浏览器上显示我的凭证。

我想知道我在这里是否遗漏了什么。请帮忙。提前致谢。

1 个答案:

答案 0 :(得分:0)

请勿使用完全限定的网址,请尝试使用相对URI。

而不是将网址指定为....

  url: "<?php echo $protocol; ?>"+location.hostname+" /member/actions/config-login2.php"

指定为,

  url: "member/actions/config-login2.php"
在AJAX调用中

如果它不起作用,JSONP是寻找

的不错选择

请查看此post