2013-06-12 5 views
0

Это действительно basic.I хочу реализовать веб-API RESTful.RESTful API - Пользовательское приложение - C#, Java, php?

Теперь я знаю, что вы можете писать собственные приложения и скрипты для интеграции с API.

Что мне нужно знать:

  • На каких языках вы можете написать этот API? C#, Java, php?
  • При создании/программировании программы, реализующей этот API, является ли это клиент и программное обеспечение, которое выдало API-сервер? (Например, Dropbox будет сервер и пользовательские приложения, которое интегрируется с API Dropbox является клиентом?

Спасибо.

+1

JQuery - это не язык. Вы можете создать REST API практически на любом языке программирования, известном человечеству. – toniedzwiedz

+0

спасибо Том. довольно прямой и значимый ответ –

+0

О себе как о вопросе.Вы можете написать веб-службу RESTful (или клиент службы) в Java, C#, php, Ruby, Python, JavaScript, C++, Perl, Clojure, Scala, Groovy и десятках других языков. Я буквально ответил на ваш первый вопрос прямо там. Если вы хотите узнать, какой язык выбрать и почему, вам нужно будет предоставить более подробную информацию о вашем случае использования. Этот сайт предназначен для конкретных вопросов программирования, а не для общих исследований. – toniedzwiedz

ответ

2

Отдыхает API может быть построена на любом языке программирования, который позволяет обрабатывать HTTP запросов (или может быть присоединен к веб-серверу в качестве обработчика запросов) два метода я использую:.

  1. Автономные службы Windows, реализует службу REST с помощью WCF
  2. WEB-сервера Apache + PHP

Вы в курсе терминологии. Программа, использующая услугу, называется клиентом, программа, предоставляющая услугу, называется сервером (хотя на самом деле в PHP-подходе, Apache будет сервером, поскольку он принимает запрос и имеет скрипт, обрабатывающий его).

Дополнительная nitpicking: JQuery - это не язык, а структура, которая поможет вам легко использовать некоторые функции JavaScript.


На Ваш комментарий резюмировать:

Закрыть :-) КЛИЕНТ передачи JSON/XML/все к серверу с помощью HTTP-запросов. Клиент может быть написан на любом языке, который может выполнять HTTP-запросы.

На стороне сервера должно быть какое-то приложение, которое обрабатывает HTTP-запросы (службы), также написанные на любом языке, если это «говорит» HTTP.

API: определение, в котором возможны операции, например, добавление учетных записей пользователей, получение текущего времени и т. Д. (Это то, что вы определяете - что вы хотите, чтобы ваша служба выполняла?).

JSON/XML/все, что вы передаете, является рабочей нагрузкой, параметрами вызова API. Например, если вы хотите добавить нового пользователя в свою систему, рабочей нагрузкой может быть новое имя пользователя, настоящее имя, адрес электронной почты и некоторые другие сведения о пользователе. Если вызов API возвращает текущее время сервера, вам могут не потребоваться какие-либо параметры, но вы получите обратно JSON/XML/что-либо из службы.

Фактический звонок определяется по URL-адресу, который вы вызываете. Например, URL для добавления пользователя может быть http://localhost/myrestservice/adduser, и вы выполнили бы запрос POST с этим URL-адресом с требуемой рабочей нагрузкой. Для примера времени URL-адрес может быть http://localhost/myrestservice/getservertime, и вы должны выполнить запрос GET по этому URL-адресу.

Я полагаю, что вы читали о том, как REST сервисов на самом деле работает, прежде чем начать, как я вижу некоторые вопросительные знаки на лице ;-)

Short:

API = доступные операции (=> URL-адрес)
Параметры для вызовов API = JSON/XML/Plain Text/все
Client = вызывает службу через HTTP
Service = обрабатывает вызовы, ответы на клиента в ответ на HTTP запросы

+0

спасибо Торстен. Пользовательское приложение, которое вы используете для реализации этого RESTful Web API, может также быть написано на любом языке? –

+0

Ну, мой ответ на этот вопрос: «Да, но на некоторых языках легче, чем в других». Вы видите, что служба REST - это, в основном, HTTP-сервер, обрабатывающий запросы GET, POST, DELETE и т. Д. C#/WCF ко всему, что для вас, если вы хотите использовать C++, например, вам придется реализовать свой собственный HTTP-сервер. Если вы используете PHP/Perl/Python/Ruby/..., Apache или IIS могут использовать ваши HTTP-серверы. –

+0

OK я смотрю.thanks. Recap: Итак, если я это правильно понимаю, у вас есть собственное приложение (клиент), написанное на любом языке, которое передает HTTP-запросы в формате XML/JSON в веб-API REST, который написан на любом языке. Этот веб-интерфейс REST служба на серверном приложении (пример: Dropbox). Таким образом, сам API не является запросом XML/JSON? –

0

Прежде всего, вы должны начать с изучения , что является RESTful API.

На каких языках вы можете написать этот API? C#, Java, php, jQuery?

Вы можете написать API на любом языке. Что может помочь - это структура, которую вы будете использовать. JQuery - это не язык, а основа для интеграции приложения Javascript в каждый веб-браузер, поэтому это не поможет.

Я бы посоветовал вам использовать микрокарта для написания вашего первого RESTful API, потому что они обычно просты в использовании и помогают сосредоточиться на важном (бутылка/колба в python, выражать в javascript, silex в php, искру в java или nina in C#)

При создании/программировании программы, реализующей этот API, является ли это клиент и программное обеспечение, выдающее API-сервер? (например, Dropbox будет сервером, а пользовательское приложение, которое интегрируется с Dropbox API, является клиентом?

Вы правы, сервер предоставляет вам услугу, следовательно, API. что API, и реализации его в нечто полезное.

+0

спасибо, оцените ваш ответ. Пользовательское приложение, которое вы используете для реализации этого RESTful Web API, может также быть написано на любом языке? –

0

Поскольку большинство людей заявили уже, вы можете сделать это практически в любом языке.

Я мог бы предположить, что вы смотрите в NodeJS? Если да, то проверить Restify: http://mcavage.github.io/node-restify/

Приятное поведение сообщества ind NodeJS, и я думаю, что он совершенно открыт для новичков. Просто постарайтесь не подобрать плохие привычки от ловушек JavaScript. Если вы новичок в программировании, я бы предложил прочитать небольшую книгу.

удачи!

+0

спасибо Ландер. Пользовательское приложение, которое вы используете для реализации этого RESTful Web API, может также быть написано на любом языке? –

+0

NodeJS - это JavaScript. В NodeJS есть некоторые хаки для привязки к другим языкам, но я бы посоветовал это сделать. – Lander

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