Я написал веб-службу, потому что я хотел, чтобы мой javascript получал доступ к методам в нем на веб-сайте с помощью ajax. Я новичок в этом. Однако я просто понял, что asmx доступен через браузер, и он показывает тестовую страницу и xml вывод данных из этих методов. есть ли способ отключить этот интерфейс для веб-службы? Я хочу, чтобы он возвращал данные в javascript-методы при их вызове.
Я не уверен, какую версию.NET Web Services вы используете, но вы можете отключить страницу справки веб-службы, которая обычно доступна только локально. Он также может отключить генерацию WSDL. См. Https://msdn.microsoft.com/en-us/library/2tyf2t8t(v=vs.100).aspx или https://www.thecodingforums.com/threads/how-to-disable-modify-the- по умолчанию-тест-страница-для-ASMX-веб-services.786001/
Если вы также хотите запретить другим пользователям доступ к вашему веб-сервису в целом, вы также должны изучить методы аутентификации.
Ваш javascript обращается к вашему веб-сервису так же, как и к вашему браузеру. Закройте свой сервис из своего браузера, вы закроете его для своего javascript.
В принципе, вы говорите, что сделали дверь в своем доме, потому что хотите быть в состоянии войти (имеет смысл!), Но теперь вы беспокоитесь, потому что каждый может видеть дверь (вы могли бы подумать о htat раньше!) И использовать это (это ваша настоящая проблема!).
Ну так что ты делаешь? Вы положили замок на дверь.
Это не делает дверь невидимой, но она удерживает не тех людей.
Вы хотите сделать то же самое с веб-службой: реализовать проверку подлинности/авторизацию.
На стороне примечание: это 2017. Я даже не знал, что люди все еще используют.asmx. Посмотрите на WCF, он более или менее заменил старые веб-службы asmx еще в 2010 году или около того...
Насколько я знаю. В вашем asmx не должны отображаться конфиденциальные данные. Если у вас есть проблемы с дизайном.
Данные XML, которые вы, вероятно, видите, это WSDL. Это не так, на самом деле это то, что позволяет потребителям знать, как структурирован ваш WebService. Для получения дополнительной информации об этом вы можете увидеть это приложение