2010-01-03 3 views
0

Мне нужно взаимодействовать с клиентским сервером на основе xml.
По моим сведениям, шаги в сервере связи клиента через XML может включать в себя:связь с клиентским сервером с помощью xml

1. client prepares the xml 
2. transmittal of the xml 
3. server processes the xml 

клиент может отправить запрос на сервер через XML-документ. Парсер XML на сервере проанализирует XML-файл и передаст информацию на сервер.
Если да, то какой будет выход синтаксического анализатора xml на сервер?
Как использовать XML-синтаксический анализатор на сервере для этой цели?
Каким будет формат ответа от сервера к клиенту (может ли он отправлять ответ в XML-формате) клиенту?

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

Спасибо,

+1

Есть ли у вас некоторая технология (кроме XML)? – miku

+0

Использовать веб-службы? –

+0

Обычно люди используют html для связи с клиентским сервером. Но мне нужно сделать это только с помощью xml во взаимодействии с сервером. – preeti

ответ

2

XML это просто формат контейнера для передачи данных на сервер.

Так, например, если вы хотите передать имя пользователя и пароль пользователя на сервер вы послали что-то вроде этого:

<credentials> 
     <username>john</username> 
     <password>password</password> 
</credentials> 

Сервер будет получать это и разобрать его. Было бы, (возможно) создать учетные данные объекта из него, как это:

class Credentials 
{ 
     String username; 
     String password; 
}; 

заполнить значения, которые он получил от разбора XML и отправить его на бизнес-уровне.

Деловой человек проверяет наличие базы данных (или любого другого хранилища данных), чтобы проверить правильность учетных данных.

Затем он сообщит, было ли все в порядке. Сервер будет затем отправить обратно (возможно, в XML, а) результат входа:

<result> 
     <errorcode>10</errorcode> 
     <errortext>The username and password do not match</errortext> 
</result> 

И клиент будет разбирать XML и представить пользователю результат.

Это объясняет ваш вопрос?

+0

Благодарим вас, , являются ли синтаксические анализаторы XML, используемые клиентом и сервером одинаковыми? – preeti

+0

Как XML анализируется на сервере? будь то синтаксический анализатор XML или сам сервер? – preeti

+0

любой XML-парсер будет в порядке. Это не синтаксический анализатор, который имеет какое-либо значение, это содержание в XML. «Сервер» - это определение, которое означает аппаратное и программное обеспечение. Программное обеспечение сервера, вероятно, имеет синтаксический анализатор XML, который будет анализировать запрос, – Toad

2

XML представляет собой способ описания данных, вероятно, было бы лучше смотреть на технологию, которая использует XML для передачи данных, например WebServices в использовании asp.net SOAP сообщений XML на основе. Вы должны посмотреть на эти механизмы в технологии, в которой вы работаете.

Если вы ожидаете получить XML-файл в определенном формате, вам необходимо взглянуть на средства доставки, опять же это может быть основанный на WebService или передача файла?

0

Это зависит от языка и функции, которые вы используете.

Результат анализатора xml может быть примерно PHP-массивы.

и обычно работают на жидком функцию praser работает как:

$output=parse_function($xml_input_string) 

да, то соединение может быть двунаправленным (клиент может иметь экземпляр парсера тоже)

+0

, если я использую любой синтаксический анализатор, написанный на Java (например, JAXP) на сервере, каков будет результат синтаксического анализатора xml на сервере и как сервер использует его? – preeti

0

Использовать сериализацию XML и де-сериализацию на стороне клиента и сервера, а не делать это самостоятельно. Создайте и создайте объект на клиенте (еще лучше в общем классе, который можно использовать как на сервере, так и на клиенте), заполнить объект данными и сериализовать его на клиенте, отправить его на сервер, де-сериализовать на объект и использовать Это. Вы можете сделать то же самое с результатом, который сервер должен был передать клиенту. Существуют XML-библиотеки на всех языках, которые помогут вам в этом. Для подключения к серверу клиентов вы можете использовать множество фреймворков. WCF - один из .NET.

Смежные вопросы