2012-04-02 20 views
7

Sto usando questo comando YQL per accedere alle informazioni di quotazione in un formato XML. Il problema è che continua a scadere e rifiutare dopo un sacco di colpi. Penso di aver bisogno di collegare la mia chiave API in modo che non pensi che si tratti di bot.Come utilizzare la chiave API con YQL di Yahoo?

Sto usando SharePoint per elaborare l'XML.

http://query.yahooapis.com/v1/public/yql?q=select%20*%20from%20yahoo.finance.quotes%20where%20symbol%20in%20(%22AAPL%22)&env=store://datatables.org/alltableswithkeys 

Questo è ciò che dice per i limiti.

Per application limit (identified by your Access Key): 100,000 calls per day. 
Per IP limits: /v1/public/: 1,000 calls per hour; /v1/yql/: 10,000 calls per hour. 

Sto cercando di ottenere quel limite di applicazione di 100.000 chiamate al giorno. O immagino che anche 10.000 chiamate all'ora siano buone. Eventuali suggerimenti? Grazie per qualsiasi aiuto.

+0

YQL utilizza OAuth, è necessario creare una chiave di accesso (http: // developer.yahoo.com/dashboard/createKey.html). – salathe

+2

Ho la chiave di accesso solo non so cosa fare con esso o dove metterlo. Grazie. – zen

+0

Ciao - So che questo è un vecchio post ma mi chiedo se sia stata trovata una soluzione usando javascript/jquery? Ho anche raggiunto il limite di dati di yahoo, ma non riesco a trovare come utilizzare la chiave del consumatore. –

risposta

2

È necessario utilizzare OAuth e passare attraverso la complicata procedura di scambio di token. Una volta che hai un access_token e un token_secret, puoi usarli per fare richieste autenticate fino alla loro scadenza.

Il flusso di lavoro completo è riepilogato here.

Avrai bisogno di passare attraverso la procedura step-by-step indicato nel link qui sopra, ma essenzialmente quello che vi ritroverete a fare è:

  1. Prendi un request_token da here.
  2. Reindirizzare l'utente a una pagina di autorizzazione di Yahoo.
  3. Recupera il numero oauth_verifier inserito nella stringa di query quando l'utente viene reindirizzato alla tua pagina.
  4. Sostituire request_token e oauth_verifier per un access_token e token_secret.
  5. È quindi possibile utilizzare access_token e token_secret per effettuare richieste autenticate.

Dal momento che si sta utilizzando NET, è possibile rendere la vita più facile utilizzando questo codice di esempio pubblicato here.

0

spero che tu abbia utilizzato Yahoo.inc per ottenere il tuo token di accesso quindi basta usare

$session = YahooSession::requireSession(CONSUMER_KEY,CONSUMER_SECRET, APP_ID); 
    $mails=$session->query('your query limit 10'); 

dopo feting accesso

Problemi correlati