Страница 1 из 1

Присвоить значение полю

Добавлено: 04 окт 2005, 18:47
Chizh
Как на Web-странице из функции на JScript присвоить значение полю которое объявлено как ASP.Net? Поле типа <asp:TextBox id="txtComputer">
Суть задачи - JScript код на стороне клиента должен присвоить ASP-шному полю имя локального компьютера (для дальнейшей передачи на сервер). Значение Request.HostName на сервере не подходит, т.к. имя как-то заменяется на имя компа прокси-сервера (работает нормально только в локальной сети).

Добавлено: 05 окт 2005, 09:55
UUU
>Значение Request.HostName на сервере не подходит

Посмотри ВСЕ передаваемые переменные окружения на сервер. Там есть переменная "IP до прокси-сервера". вот эту пару и юзай.

Добавлено: 05 окт 2005, 15:34
Chizh
Посмотрел, но ничего такого не нашёл.

Добавлено: 05 окт 2005, 18:22
AiK
На вскидку: в REMOTE_ADDR - прописывается IP прокси, в HTTP_FORWARDED_FOR -IP адрес посетителя (анонимные прокси не прописывают), HTTP_VIA - имя прокси или его IP. Вроде бывают и другие заголовки, но для большинства прокси тебе и этого хватит. Подробности см. в соответствующем RFC.

Добавлено: 05 окт 2005, 18:23
Oscar
Chizh,
JScript работает на стороне клиента,
ASP, насколько я знаю (мало знаком), - на сервере.

Для наглядности представь длиннющий провод, который натянутый между ними.

На JScript НЕЛЬЗЯ присвоить значение полю в ASP.
Но! Можно передать через HTTP-Protokol, для этого: определяешь имя локального компьютера на JScript на одной странице - и загружаешь вторую страницу, передавая ей это значение.

client.html (+JScript) -> server.asp?localIP=FROM_JSCRIPT

То, что имел ввиду UUU это поле в HTTP хэдере: X-Forwarded-For

Если прокси прозрачный - оно будет заполнено реальным (локальным) IP. Но спешу разочаровать, большинство прокси, насколько мне известно, не прозрачные и рассчитаны на то, чтобы эта информация была недоступна.

И ещё одна "радостная" новость: Если я не ошибаюсь JScript обычно выдаёт локальный IP - как адрес localhostа, то есть 127.0.0.1 , для всех компьютеров.


Если я чего-то напутал, - пусть знающие меня исправят.
Если всё же найдёшь способ - напиши, плиз, сюда как?..

Добавлено: 06 окт 2005, 01:28
Chizh
Oscar писал(а):Если прокси прозрачный - оно будет заполнено реальным (локальным) IP.
У меня интранет из двух сеток, соединённых по VPN через Microsoft ISA. Можно ли настроить ису на "прозрачность"?

Добавлено: 06 окт 2005, 15:03
Chizh
Oscar писал(а):Если всё же найдёшь способ - напиши, плиз, сюда как?..
Получилось так:
<SCRIPT LANGUAGE="JScript">
function OnLoad()
{
var WshNetwork = new ActiveXObject("WScript.Network")]