URL в файле .js относятся к местоположению JavaScript или местоположению браузера? - PullRequest
4 голосов
/ 24 мая 2011

а) Когда я использую запрос AJAX в файле Javascript, например:

... url: "request.php" ...

Когда я нахожусь на месте (переписанный URL):

http://domain/some/action/id/

, а javascript расположен и связан в метатегах:

... src="http://domain/js/ajaxrequest.js" ...

Затем запрос переходит к http://domain/some/action/id/request.php или http://domain/js/request.php?

b) Если я изменю URL-адрес запроса на /request.php вместо request.php, то он всегда будет http://domain/request.php? 1023 *

c) Если у меня две рабочие среды:

http://localhost/projectname/ и http://projectname.com/

и структура файла выглядит следующим образом (projectname.com является копией каталога с именем проекта):

http://localhost/projectname/js/ajaxrequest.js
http://localhost/projectname/request.php
http://projectname.com/js/ajaxrequest.js
http://projectname.com/request.php

И я могу быть на главной странице, а также переписать адреса, например:

http://localhost/projectname/
http://projectname.com/
http://localhost/projectname/some/action/id/
http://projectname.com/some/action/id/

И я хочу, чтобы URL запроса в файле javascript работал во всех этих условиях, если бы я указывал адрес как:

url: "../request.php"

в файле JS?

Ответы [ 2 ]

5 голосов
/ 24 мая 2011

URI в JavaScript всегда вставляются только в объекты, связанные с этим документом , поэтому относятся к URI документа, а не к URI JS src.

a.Бывший

б.Да

c.Я настоятельно рекомендую, чтобы вы сохранили расстояние любого пути от корня во всех средах.Либо настройте виртуальный хостинг имен локально, либо используйте что-то вроде Charles Proxy, чтобы переписать ваше доменное имя в локальной тестовой среде.

1 голос
/ 24 мая 2011

На сервере разработки нашей компании была похожая проблема. Мы решили это с помощью поддоменов, а не папок. Так что это projectname.localhost/some/action/id/.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...