Регистрация для ключа API

Для запросов, обрабатываемых системой, требуется ключ API. Как только пользователь регистрируется, для этого пользователя автоматически создается ключ API. Ключ API должен быть присоединен к запросу через параметр api (см. Полный пример ниже).

 

Отправка запроса на сокращение URL-адреса

Чтобы отправить запрос, пользователь должен использовать следующий формат, в котором требуются переменные api и url . В приведенном ниже примере используется URL-адрес демонстрации, но вы должны использовать свое собственное доменное имя. Чтобы запросить пользовательский псевдоним, просто добавьте &custom=CUSTOMALIAS в конце.

GET http://zyyz.ru/api?api=APIKEY&url=THELONGURLTOBESHORTENED&custom=CUSTOMALIAS

 

Ответ сервера

Как и раньше, ответ будет закодирован в формате JSON (по умолчанию). Это делается для облегчения использования разных языков. Первый элемент ответа всегда будет указывать, произошла ли ошибка (error: 1) или нет (error: 0). Второй элемент изменится по отношению к первому элементу. Если есть ошибка, второй элемент будет называться «msg», который содержит источник ошибки, иначе он будет называться «short», который содержит короткий URL-адрес. (См. Ниже пример)

// No errors
{
  "error":0,
  "short":"http:\/\/zyyz.ru\/DkZOb"
}
// An error has occurred
{
  "error":1,
  "msg":"Please enter a valid URL"
}

 

Использование текстового формата

Вы можете запросить ответ в виде простого текста, просто добавив &format=text в конце вашего запроса. Это вернет только http://zyyz.ru/DkZOb вместо ответа JSON. Обратите внимание, что при возникновении ошибки ничего не выводит.

 

Использование API в PHP

Чтобы использовать API в своем приложении PHP, вам необходимо отправить запрос GET через file_get_contents или cURL : оба являются надежными методами. Вы можете увидеть пример кода ниже, используя file_get_contents .

< ? PHP
  // Использование JSON Response
  $ api_url = " http://zyyz.ru/api?key=APIKEY&url=THELONGURLTOBESHORTENED&custom=CUSTOMALIAS " ;
  $ res =  @ json_decode ( file_get_contents ( $ api_url ), TRUE );
  if ( $ res [ " error " ]) {
    echo  $ res [ " msg " ];
  } else {
    echo  $ res [ " short " ];
  }
  // Использование простого текстового ответа
  $ api_url = " http://zyyz.ru/api?api=APIKEY&url=THELONGURLTOBESHORTENED&custom=CUSTOMALIAS&format=text " ;
  $ res =  @ file_get_contents ( $ api_url );
  if ( $ res ) {
    echo  $ res ;
  }
? >

 

Пример функции

< ? PHP
define ( " SHORTENER_URL " , " http://zyyz.ru " );
define ( " SHORTENER_KEY " , " 123456789 " );
/ * *** Пример функции PHP ** * /
функция  shorten ( $ url , $ custom  =  " " , $ format  =  " json " ) {
  $ api_url  =  SHORTENER_KEY . " / api /? key = " . SHORTENER_KEY ;
  $ api_url  . =  " & url = " . urlencode ( filter_var ( $ url , FILTER_SANITIZE_URL ));
    if ( ! empty ( $ custom )) {
      $ api_url  . =  " & custom = " . strip_tags ( $ custom );
    }
  $ curl  =  curl_init ();
  curl_setopt_array ( $ curl , array (
      CURLOPT_RETURNTRANSFER  =>  1 ,
      CURLOPT_URL  =>  $ api_url
  ));
  $ Response  =  curl_exec ( $ curl );
  curl_close ( $ curl );
  
  if ( $ format  ==  " text " ) {
    $ Ar  =  json_decode ( $ Response , TRUE );
      if ( $ Ar [ " error " ]) {
          return  $ Ar [ " msg " ];
      } else {
          return  $ Ar [ " short " ];
      }
  } else {
    return  $ Response ;
  }
}
? >