|
"удаленный" вызов вебсервиса
|
|||
---|---|---|---|
#18+
Прошу ногами не пинать, это мои первые шаги в програмирование webservice и .net вопрос в следующем есть веб сервис Код: c# 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13.
содержание web.config файла: Код: xml 1. 2. 3. 4. 5. 6. 7.
веб сервер IIS6 2003 x64 при открытии в браузере url http://server/soap/helloworld.asmx?op=sayHello с машины где крутиться веб сервер вижу поле для ввода переменной name а вот при попытке открыть тот же url http://server/soap/helloworld.asmx?op=sayHello c удаленной машины вижу только описание сервиса без поля для ввода переменной name (ну и крамольную надпись The test form is only available for requests from the local machine.): Код: html 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28.
Какие настройки или какой код нужно добавить, что бы с удаленной машины было доступно поле для ввода переменной name ... |
|||
:
Нравится:
Не нравится:
|
|||
16.03.2012, 20:09 |
|
"удаленный" вызов вебсервиса
|
|||
---|---|---|---|
#18+
Дополню вопрос: если "The test form is only available for requests from the local machine" озночает, что форму для ввода переменной name я могу увидеть только с local machine, вот пример где подобные поля доступны с удаленных машин http://www.mcommunicator.ru/m2m/m2m_api.asmx?op=SendMessage правда там такая строка To test the operation using the HTTP POST protocol, click the 'Invoke' button. (возможно это означает что разрешен метод POST, а в моем примере нет ...) ВОПРОС: (в отношение моего примера Example1, см. код в первом посте) как через адресную строку браузера передать переменную name вебсервису? Спасибо. ... |
|||
:
Нравится:
Не нравится:
|
|||
16.03.2012, 20:26 |
|
"удаленный" вызов вебсервиса
|
|||
---|---|---|---|
#18+
Это нормальная дефолтная настройка - все пост запросы не с локалхоста запрещены. Если очень хочется, можете принудительно включить эту возможность (но, не советую): Код: xml 1. 2. 3. 4. 5. 6. 7. 8. 9. 10.
... |
|||
:
Нравится:
Не нравится:
|
|||
16.03.2012, 20:28 |
|
"удаленный" вызов вебсервиса
|
|||
---|---|---|---|
#18+
МСУ спасибо, получилось. "Если очень хочется, можете принудительно включить эту возможность (но, не советую):" я так понимаю, что это не очень хорошо с точки зрения безопасности? тогда открою такую возможность на время разработки, до выноса вебсервиса в интернет. Спасибо. ... |
|||
:
Нравится:
Не нравится:
|
|||
16.03.2012, 20:34 |
|
"удаленный" вызов вебсервиса
|
|||
---|---|---|---|
#18+
Ну тут не столько безопасность, а сколько не все клиенты могут поддерживать мультипротоколы. Например, 1C-клиент не сможет сгенерить WS-ссылку по этому протоколу, потому, что не поддерживает POST (берется из описания WSDL).Во-вторых, роботы могут нажимать пост кнопку, если каким-то образом URL засветится в поисковом индексе.В-третьих, данный протокол полезен только для параметров веб-методов, имеющих простые типы. С объектными типами использование данной возможности становится бесполезным.Единственное, приемлемо для тестировщиков при тестировании параметров с простыми типами. Но, по хорошему, юнит-тест сгенерить для веб-сервиса и проще и понятней. Вообщем, тестируйте, а потом выключайте. И не забудьте указать свой неймспейс сервиса, отличный от дефолтного (tempuri). ... |
|||
:
Нравится:
Не нравится:
|
|||
16.03.2012, 20:56 |
|
"удаленный" вызов вебсервиса
|
|||
---|---|---|---|
#18+
МСУ... И не забудьте указать свой неймспейс сервиса, отличный от дефолтного (tempuri). А не подскажете где указывается ? ... |
|||
:
Нравится:
Не нравится:
|
|||
17.08.2012, 13:01 |
|
"удаленный" вызов вебсервиса
|
|||
---|---|---|---|
#18+
Код: sql 1. 2. 3. 4. 5. 6. 7.
... |
|||
:
Нравится:
Не нравится:
|
|||
17.08.2012, 14:22 |
|
"удаленный" вызов вебсервиса
|
|||
---|---|---|---|
#18+
max44, Спасибо, но ... бес попутал мне для wcf нужно а то получаю вот такую ошибку при попытке везвать метод wcf сервиса тут текст ошибки Не удалось обработать сообщение. Скорее всего, причина в том, что действие " http://tempuri.org/IServiceAutenfication/ValidateUser" является неправильным или сообщение содержит недопустимый или простроченный маркер контекста безопасности, либо имеет место несоответствие между привязками. Маркер контекста безопасности становится недействительным, когда канал прерван службой из-за отсутствия активности. Чтобы предотвратить преждевременное прерывание службой простаивающих сеансов, увеличьте тайм-аут Receive в привязке конечной точки службы. ... |
|||
:
Нравится:
Не нравится:
|
|||
17.08.2012, 14:39 |
|
|
start [/forum/topic.php?fid=19&msg=37709148&tid=1397206]: |
0ms |
get settings: |
9ms |
get forum list: |
13ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
32ms |
get topic data: |
10ms |
get forum data: |
2ms |
get page messages: |
43ms |
get tp. blocked users: |
1ms |
others: | 268ms |
total: | 384ms |
0 / 0 |