YQL: Использование веб-контента для не-программистов

Строительство красивого дизайна является большой опыт.

Видя, дизайн развалится, когда люди начинают положить в реальное содержание, хотя, болезненна.That’ поэтому тестирование как можно скорее с реальной информацией, чтобы посмотреть, как оно тарифов является столь важным.Для этого, веб-сервисы предоставляют нам много информации, с которой, чтобы заполнить нашу продукцию.В последние годы, это был specialist’ с работой, но огромного количества информации, и ряд систем потреблять это делает его легче и проще в использовании веб-служб, даже для людей с не очень развитии experience.

На Программируемые Web, вы можете найти (на сегодняшний день) 2580 различных интерфейсов прикладного программирования (или API).API позволяет получить доступ к информации provider’ с данными в формате сырья и переформатировать его в соответствии с вашими needs.

The API listing site programmableweb.com lists 2580 different APIs to chose from.

Проблемы с APIs

Проблема с API-интерфейсов является то, что доступ к ним меняется в простоте, только от того, чтобы загрузить данные из URL все, вплоть до того, чтобы аутентификации на сервере и передавать все виды информации о приложении вы хотите построить, прежде чемВаш первый кусок information.

Каждый API базируется на различные идеи о том, какую информацию необходимо предоставить, в каком формате она должна быть в, какие данные он будет отдавать и в каком формате.Все это делает с помощью сторонних API-интерфейсы в ваших продуктах очень много времени, и боль умножается с каждым из них вы используете.Если вы хотите получать фотографии с Flickr и обновления с Twitter, а затем показать географическую информацию в Twitter на карту, то у вас есть настоящий поход ahead.

Упрощение API Access

Yahoo использует API-интерфейсы почти для всех своих продуктов.Вместо того, доступ к базе данных и отображения информации живут на экране, передняя часть вызывает API, который в свою очередь получает информацию от задней части, который общается с базами данных.Это дает Yahoo преимущество, которое позволяет масштабировать до миллионов пользователей и возможность изменения передней или задней части, не нарушая other.

Поскольку API, были построены более 10 лет, все они различаются по формату и то, как вы к ним доступ.Эта стоимость Yahoo слишком много времени, и именно поэтому он построил Yahoo Pipes — чтобы облегчить process.

Yahoo Pipes
Большой view

Трубы удивительно.Этовизуальным способом, чтобы смешивать и сопоставлять информацию из Интернета.Однако, как люди привыкли Трубы Более того, они столкнулись с ограничениями.Версии труб было трудно, изменить функциональность трубы чуть, нужно было вернуться к системе, и она, как правило замедлить с очень сложными и большими преобразований.Вот почему Yahoo предлагает новую систему для people’ потребности с, что многое изменить или получить очень complex.

YQL является как сервис и языка (Yahoo Query Language).Это делает много веб-сервисов и API-интерфейсов мертвых простой, как с точки зрения доступа и format.

Получение данных с YQL

Самый простой способ получить доступ к YQL является использование YQL console.Этот инструмент позволяет вам просматривать ваши YQL работу и играть с системой без необходимости знать программирования.Интерфейс состоит из нескольких компонентов:

The YQL console
Большой view

  1. YQL разделе заявлением, где вы написать свой YQL query.YQL имеет очень простой синтаксис и we’ получу в деталях немного позже.Сейчас самое время, чтобы попробовать его.Введите ваш запрос, определить выходной формат (XML или JSON), проверьте, чтобы иметь диагностики отчетности, а затем ударил “ Test” кнопку, чтобы просмотреть эту информацию.Существует также постоянная ссылка, щелкните его, чтобы убедиться, что вы don’ T потерять работу в случае, если вы случайно попали “ Back” button.
  2. Результаты раздел показывает вам информацию вернулся из веб-service.Вы можете прочитать его в формате XML или JSON или нажмите “ Дерево view” для навигации данных в Explorer-как interface.
  3. раздел REST запросов дает вам адрес вашего YQL query.Вы можете скопировать и вставить этот адрес в любое время, чтобы использовать его в браузер или программу.Получение информации из различных источников с YQL на самом деле это easy.
  4. Запросы раздел дает вам доступ к запросам ранее entered.Вы можете задать запрос псевдонимы для себя (сколько вы бы закладки веб-сайтов), получить историю последних запросов (очень полезно в случае, если вы испортите) и получить некоторые примеры запросов, чтобы получить started.
  5. раздел таблицы данных содержит список всех веб-сервисов можно получить доступ с помощью YQL.Нажатие на название таблицы, в большинстве случаев открыть демо-запроса в консоли.При наведении курсора на ссылку, you’ получу еще две ссылки — desc и src — которые дают вам информацию о параметрах, что веб-сервис позволяет и которые показывают источник данных самой таблицы.В большинстве случаев, все, что вам нужно сделать, это нажать на название.Вы можете также фильтровать данныеТаблица списка, набрав что you’ ищете for.

Использование YQL Data

По самым простым способом использования YQL данных JSON, чтобы выбрать в качестве выходного формата и определить функцию обратного вызова.Если вы сделаете это, вы можете скопировать и вставить URL из консоли и написать очень простой JavaScript для отображения информации в HTML.Let’ ы дать, что go.

В очень простой пример, let’ S получить некоторые фотографии из Flickr для поиска “ cat”:

select * from flickr.photos.search where text="cat"

Тип, что в YQL console, и ударил “ Test” кнопки.Вы получите результат в XML — много информации о фотографии:

Getting photos of cats using YQL and Flickr
Большой view

Вместо того, XML, JSON выбрать в качестве выходного формата, и введите myflickr как имя функции обратного вызова.Вы будете получать ту же информацию, как объект JSON внутри вызова функции myflickr.

Getting photos of cats using YQL and Flickr
Большой view

Вы можете скопировать URL создан в “ REST query” поля:


Большой view

Написать функция JavaScript с именем myflickr с параметром data, и, скопируйте и вставьте URL как src другого блока сценария:

<script>
  function myflickr(data){
    alert(data);
  }
</script>
<script src="http://query.yahooapis.com/v1/public/yql?
q=select%20*%20from%20flickr.photos.search%20where%20tex
t%3D%22cat%22&format=json&env=store%3A%2F%2Fdatatables.org
%2Falltableswithkeys&callback=myflickr"></script>

Если вы запустить этот внутренний browser, скопированный URL будет извлекать данные из YQL сервер и отправить его на myflickr функции, что и data параметр.data параметр является объектом, который содержит все вернулись информации из YQL.Чтобы убедиться, что вы получили нужную информацию, проверить, является ли data.query.results свойство существует, то вы можете цикл по результирующего набора:

<script>function myflickr(data){
  if(data.query.results){
    var photos = data.query.results.photo;
    for(var i=0,j=photos.length;i<j;i++){
      alert(photos[i].title);
    }
  }
}</script>
<script src="http://query.yahooapis.com/v1/public/yql?
q=select%20*%20from%20flickr.photos.search%20where%20text%3D%22cat%22
&format=json&env=store%3A%2F%2Fdatatables.org%2Falltableswithkeys&
callback=myflickr"></script>

Вы можете легко получить структуру информации и знаю, что петля состоянии, проверяя дерева поля результата в консоли:

The data structure in tree format

ПравоТеперь, все это делает отображения названий получить фотографии как alerts, которая есть не что иное раздражает.Для отображения фотографии в нужном формате, нам нужно немного more — но никакой магии или:

<div id="flickr"></div>
<script>function myflickr(data){
  if(data.query.results){
    var out = '<ul>';
    var photos = data.query.results.photo;
    for(var i=0,j=photos.length;i<j;i++){
      out += '<li><img src="http://farm' + photos[i].farm +
             '.static.flickr.com/' + photos[i].server + '/' + photos[i].id +
             '_' + photos[i].secret + '_s.jpg" alt="' + photos[i].title + 
             '"></li>';
    }
    out += '</ul>';
  }
  document.getElementById('flickr').innerHTML = out;
}</script>
<script src="http://query.yahooapis.com/v1/public/yql?
q=select%20*%20from%20flickr.photos.search%20where%20text%3D%22cat%22&
format=json&env=store%3A%2F%2Fdatatables.org%2Falltableswithkeys&
callback=myflickr"></script>

Photos of cats on flickr

поставить это в action и you’ получу фото кошек, живут с Flickr и без необходимости проходить через любые болезненные аутентификации process.

Сложности в результате HTM …

Если вы хотите прочитать полностью статью, посетите сайт наших спонсоров

Comments are closed.