NxFilter Tutorial

  • EN English
  • DE Deutsch
  • ES Español
  • FR Français
  • IT Italiano
  • JP 日本語
  • BR Português
  • RU Русский
  • TR Türkçe
Удаленный API через HTTP
Вы можете захотеть создавать операторы с вашего собственного сайта и обновлять БД NxCloud автоматически. Вы можете создать свой собственный набор API для удаленной работы с операторами, используя классы DAO и Data из NxCloud.

Для получения дополнительной информации о классах DAO и Data прочтите Классы DAO и Data


Пример набора API
У нас есть пример набора API в /nxfilter/webapps/example/remoteapi.jsp. Вы можете вызвать эту JSP-страницу удаленно по протоколу HTTP. В JSP-странице определены следующие действия,

- createOperator

С помощью этого действия можно создать оператор. Он принимает 2 параметра. Один из них - 'opName' для имени оператора. Второй - 'opType' для типа оператора, который вы хотите создать, 1 - для оператора типа "бизнес" и 2 - для оператора типа "дом". В случае успеха возвращается '/OK', а в случае ошибки - '/ERR'.


		ex) http://localhost/example/remoteapi.jsp?action=createOperator&opName=testname&opType=1
	

- selectOperator

С помощью этого действия можно получить информацию об операторе. Оно принимает параметр 'opName' для имени оператора. При успехе возвращается массив JSON, содержащий информацию об операторе. При ошибке возвращается '/ERR'.


		ex) http://localhost/example/remoteapi.jsp?action=selectOperator&opName=testname
	

- setExpDate

Это действие предназначено для установки даты истечения срока действия оператора. Принимает 2 параметра. Один из них - 'opName' для имени оператора. Другой - 'expDate', который представляет собой строку формата 'yyyyMMdd' для даты истечения срока действия даты, которую вы хотите установить для службы фильтрации. В случае успеха возвращается '/OK', а в случае ошибки - '/ERR'.


		ex) http://localhost/example/remoteapi.jsp?action=setExpDate&opName=testname&expDate=20191231
	

По умолчанию, пример JSP-страницы принимает вызовы только с адреса 127.0.0.1 или localhost. Вам необходимо изменить ограничительную часть JSP-страницы, чтобы она принимала запросы с других хостов.


		// Only localhost access allowed.
		if(!request.getRemoteAddr().startsWith("127.0.0.1")){
			out.println(request.getRemoteAddr());
			return;
		}
	

Для создания этих удаленных API-функций мы использовали только классы NxFilter DAO и Data. Поэтому вы можете создать и более сложные.

Вы можете иметь ACL на основе IP-адреса для ваших JSP-страниц, используя System > Allowed IP > Allowed IP To GUI.