В допълнение към големия брой функционални услуги, достъпни основните услуги на сървъра, тези услуги да предоставят функционални модули на системата: изпълнение на задачи, създават задачи и събития в календара и т.н.
кореновата система на услуги
За да корен услуги включват:
За всички услуги, предоставяни Root 2 входни точки: WCF HTTP и сапуна WCF. Достъп до определена точка по следния начин:
/ API / ПОЧИВКА /<Имя сервиса>/ Help. за това ще AuthorizationService
Режимът на WCF HTTP, всички услуги (с изключение на MetadataService) подкрепи XML, така и формати за данни JSON. Форматът е настроен със заглавие:
- Accept: заявление / XML (или Content-Type: заявление / XML за искане на POST) - за обмен в XML формат
- Accept: заявление / JSON (или Content-Type: заявление / JSON за заявка POST) - за обмен на JSON формат
MetadataService услуга поддържа само формат за обмен на данни XML
Доверени приложения и сесии за връзка
Token приложение може да се създаде и да погледнете страницата Елма сървъра
Настройки жетони външни приложения се извършват под администрация, като в същото време има редица на система символите, срок на годност, която се настройва отделно за всяко приложение.
Създаване на нова външно приложение и в знак
Нека създадем външно приложение и знак за това. За да направите това, отидете в Администрация -> System -> Външни приложения и кликнете върху бутона "Добави".
На следващо място, попълнете задължителните полета за нашето приложение и кликнете върху "Save".
Тогава ще трябва да отидете до създал приложението и да го включите.
Сега можете да добавите означението. Обръщаме се към раздела "Приложение Знаците", щракнете върху "Добавяне на Token" и изберете датата на срока на годност.
Ново външно приложение готов, а сега можете да работите с него.
Помощ poWebAPI
Налице е автоматично генериран информация за WebAPI. Тя съдържа информация за които има налични услуги, съоръжения, пренос и типове данни за имотите. Той се намира в относителна връзка
Нека разгледаме по-подробно всеки един от тези елементи.
Ето списък на поддържаните публичен уеб услуги
Тя съдържа информация за това кои уеб услуги, системи са на разположение, за да се обадя приложения на трети страни.
Всеки уеб услуга предоставя информация за методи, които могат да бъдат поискани от дадена уеб услуга, както и на параметрите на метода и да се върнете ценности.
Също така, всяка услуга съдържа информация за това как да се обадя методи: или чрез WSDL. или чрез искания HTTP.
обадя чрез WSDL информация
Информация за поканата в заявките за Http
Включване в метод, можете да намерите информация за формата, в която трябва да създадете заявка и в каква форма ще дойде отговорът.
Списък на видове обекти (лица)
Тя съдържа информация за всички области на системата, включително процесите.
Всеки тип, представен тук, се предоставя информация за неговите качества. Процесът не съдържа информация за техния контекст.
списък на трансферите
Тя съдържа информация за всички налични система обяви.
Всяка обява е осигурена тук съхранява информация за нейните ценности.
Списъкът на типове данни за имоти
Тя съдържа информация за идентификатора на типа на данните. тук:
- РЕЗЮМЕ (72ed98ca-f260-4671-9bcd-ff1d80235f47)
- Вид на проекта (d1397b84-f5ab-4665-984f-fdeb8f77eb0b)
- Вид документ (a3a41ae4-30e2-4c46-bba2-ee55efdc7b90)
- тип RAC (691ed407-4007-4530-834b-0c6a34bb9af1)
- Преброяване (849c1ac9-4d46-4194-8cbb-43f84adf9c17)
2. ID подтип на данни - уникален идентификатор за всеки тип обект. Този идентификатор може да не се повтаря.
например ispolzovaniyaWebAPI
Има два варианта на взаимодействие с WebAPI код: чрез WSDL- услуги и чрез Http- искания. По-долу са примери за работа с минимално Web API за всеки вариант.
Работете искания cherezHttp
защото работи с потока след употреба ReadToEnd функция () символ в променлива SR не е (ще има само празен низ). Резултатът от функцията ще бъде отговорът тук:
<
"AuthToken": "39c45713-59c0-48db-aeee-77e93579b330",
"CurrentUserId": "1"
"Lang": "RU-RU",
"SessionToken": "0B56F7016540A75C5352942FDD3E40FAC7E73663B3BD1279B39780215603285F28432FD2D2940842A5BFF83BA97830A07577004F6CE61E10E2A9C1885A74192B"
>
- typeUid - уникален идентификатор, като "задача".
- entityId - идентификатор обект
Ето само част от отговора, тъй като цялата реакция е твърде голям. Ако имате нужда само някои от полетата на даден обект, използвайте функцията LoadTree. За да качите няколко обекта един въпрос, използвайте функцията за заявки (за изтегляне на всички области обект) или QueryTree (за зареждане на някои области на обекти).
По-долу е кодът извикване на функция за заявки.
- typeUid - уникален идентификатор, като "задача".
- eqlQuery - искане EQL език.
- лимит - сумата, получена от елементите
- офсет - първоначалния елемент
- вид - вид
- filterProviderUid - уникален идентификатор за ISP филтриране
- filterProviderData - доставчик на данни за филтриране
- филтър - стойности на полетата за филтъра за лице
В «Резултатът» завърна True. Това означава, че задачата е приключило успешно. Ако по някаква причина това не може да се направи в «Резултати» ще се върне False.
RabotacherezWSDL
При успех услугата ще бъде добавен към "Solution Explorer."
По същия начин, добави линк към IEntityService.
Тук имаме нужда от имената на пространство System.ServiceModel.Web.
Първи стъпки. За удобство, ние създаваме WsdlService клас и да започне да работи.
Променлива _entityServiceFactory (и други подобни) се използва за създаване на канал за комуникация със сървъра. Те се инициализира в (функция TestStart). самата комуникационният канал е създаден с помощта CreateChannel ().
Помислете функция GetAuthToken (). Частично authorizationService - това вече е създаден за услуга само по себе си съдържа методи, които са описани в помощта за WebAPI.
Използване на канал е вътре използване на (...) <…>. Той е необходим за предаването на задължителните заглавки използващи различни обслужващи функции.
За да хванеш тази грешка, можете да получите следната информация:
- съобщение за грешка
- Уеб код за грешка (например: 400, 401, 500)
- Вътрешна грешка (ако има такива)
и още много други.
Код за грешка 500 е свързан с вътрешна грешка в сървъра. Най-често причината за това може да бъде:
- Грешка при изпълнение на код на сървъра
- Липсата на конкретен предмет (например: използването на натоварване функция)
- Липсата на определен тип обект (когато typeUid не съществува)
Теоретично възможни грешки и други кодове, но те са много рядко.
Пристъпваме към задачите за изтегляне. Добави функция създаден клас LoadTask ().
Тук са само някои от полетата, върнати от функцията.
Следната грешка може да се появи при извършване на определени функции:
За повече информация: Квота превишава максималния брой съобщения за входящи съобщения (65536). За да се увеличи квотата, използвайте MaxReceivedMessageSize съответната свързваща елемент собственост "
Това е така, защото отговорът идва от сървъра е твърде голям, и си ограничение приложение не може да го пропуснете. За да избегнете това, използвайте инициализация на променливите _entityServiceFactory следва:
API 1.0.1 версия 3.2 ELMA
Един пример за прилагането на самообслужване WebAPI
Свързани статии