Ответ 1
В принципе, что такое API?
Если вы понимаете, как данные поступают из HTML-формы в php-код, доверьтесь мне, что вы знаете все об API. Здесь, а не говорящие формы, мы говорим о URL-адресах, которые создаются в конце этими формами..
Каковы типы API?
Существует два типа сильно используемых API для веб-сервисов: SOAP и REST. Google является одним из основных игроков с API, основанным на SOAP, в то время как Yahoo (и большинство их недавних приобретений) использует подход REST. Чаще всего, служба "Web 2.0", с которой вы сталкиваетесь сегодня, вероятно, будет использовать REST.
Как создать REST API в PHP с помощью ключа аутентификации для удаления значения из базы данных?
Допустим, у нас есть класс PHP (manage.php), который помогает нам управлять записями в базе данных:
class manage { private $entryId; function __construct($entryId) {
$this->entryId = $entryId;
} function deleteEntry() {
//delete $this->entryId from database
}}
На нашем собственном сервере мы можем получить доступ к этой функции следующим образом:
require_once('manage.php');
$m = new manage(23);
$m->deleteEntry();
Достаточно легко для нас, но как мы разрешаем кому-то, кто не на нашем сервере, получить доступ к одной и той же функциональности? Для этого хорошо создайте третий файл, который будет действовать как буфер (или "интерфейс" ) между другими разработчиками и нашим классом. Вот пример файла, который мы могли бы создать, чтобы позволить разработчикам получить доступ к функции delete в нашем классе, поэтому найдите его в api/delete.php
require_once('manage.php');
if(hasPermission($_POST['api_key']) {
$m = new manage($_POST['entry_id']);
$m->deleteEntry();
}
Это позволит пользователям отправлять запрос POST нам http://example.com/api/delete.php с помощью api_key и entry_id. Вы заметите, что функция очень похожа на то, что мы написали на нашем собственном сервере, за исключением того, что мы проверяем переменную POST api_key, используя функцию, чтобы узнать, разрешено ли ей доступ к базе данных. Мы не включили эту функцию здесь (hasPermission) для простоты. В дополнение к тому, что показано, youd также должен найти учетную запись пользователя на основе api_key, поставить некоторые проверки ошибок и (если вы хотите создать хороший API) обеспечить должным образом отформатированный успех или ответ об ошибке после запроса. Хорошо входите в успех и ответы об ошибках немного.
Как создать хороший API и почему это имеет значение?
Я думаю, что это видео от Google может объяснить намного лучше меня... http://youtu.be/aAb7hSCtvGw ..
Ссылки:
http://en.wikipedia.org/wiki/Representational_state_transfer
http://en.wikipedia.org/wiki/SOAP
http://particletree.com/features/how-to-add-an-api-to-your-web-service/
http://www.webresourcesdepot.com/how-to-create-an-api-10-tutorials/
Примечание: Ответ - это компиляция всех ссылок!!.