Как получить абсолютный URL сайта в функции вызова Json? - PullRequest
0 голосов
/ 18 марта 2011

Я вызвал функцию ниже при загрузке страницы.

http://www.test.com/home
http://biz.test.com/abhishek/favorites
http://www.test.com/chat/messages
http://prod.test.com/conversation

Я хочу получить абсолютный путь к сайту в javascript, поэтому я легко назначаю переменную ниже strLink здесь я назначаю фиксированный путь strLink = "www.test.com"; вместо этого я хочу, чтобы он был динамическим. Как я могу получить URL-адрес веб-сайта ..

предположим, мой URL ->

http://prod.test.com/conversation

Я хочу http://prod.test.com/ не полный путь ..

  var strLink ;
    strLink= "www.test.com"; // <- here I want to add dynamic path..
    strLink = strLink + "Service/getnames.asmx/GetNameByCity"
    function getName() {
        $.ajax({
            type: "POST",
            url: strLink,
            data: "{}",
            contentType: "application/json; charset=utf-8",
            dataType: "json",
            success: function(msg) {
                 // code
            }
        });
    }    

Ответы [ 3 ]

1 голос
/ 18 марта 2011

@ lonesomeday совершенно правильно о том, как узнать текущий протокол и домен. Однако в этом случае вам вообще не понадобится доменное имя. Просто укажите корневой абсолютный путь:

url: "/Service/getnames.asmx/GetNameByCity"

начальный / всегда будет указывать на корневой каталог текущего домена.

1 голос
/ 18 марта 2011

Чтобы получить URL текущей веб-страницы, вы можете использовать объект location.

В этом случае вам нужны location.protocol и location.hostname:

url: location.protocol + '//' + location.hostname + '/Service/getnames.asmx/GetNameByCity',
0 голосов
/ 18 марта 2011

использование window.location.hostname

...