2016-09-04 25 views
6

Sitem için bir miktar matematik yapmak için wolfram'ı sorgulamaya çalışıyorum ve sonucu görüntüledim. CORS ile sorun yaşıyorum. Benim Kodu:Statik Github Sayfalarında WolframAlpha İsteği Nasıl Yapılır?

var xmlHttp = new XMLHttpRequest(); 
xmlHttp.onreadystatechange = function() { 
    if (xmlHttp.readyState == 4 && xmlHttp.status == 200) 
    callback(xmlHttp.responseText); 
} 
xmlHttp.open("GET", "http://api.wolframalpha.com/v2/query?input="+theUrl+"&appid=", true); // true for asynchronous 
xmlHttp.send(null); 

My Hata:

"Çapraz Kökeni İsteği Engellendi: Aynı Kökeni Politikası http://api.wolframalpha.com/v2/query?input=sqrt(100)&appid= de uzaktan kaynak okuma izin vermez (Sebep:. CORS başlığı 'Erişim-Control-Allow-Origin ' eksik)."

Ben dinamik bir sitede sadece

Header set Access-Control-Allow-Origin "*" 

.htaccess ama statik bir sitede bunu nasıl emin değilim ekleyebilirsiniz anlıyoruz. Allow-Access_origin'in zaten github sayfalarında bulunması gerektiğini okudum. Burada

2 cevap: Burada Cross-Origin Resource Sharing on GitHub Pages

2 cevap: Is there a way to enable CORS on Github pages?

+1

Access-Control-Allow-Origin Üstbilgisi, sunucu tarafında, yani bu durumda wolframalpha ayarlanmalıdır. Wolframalpha'yı idare etmedikçe, muhtemelen bunu yapmanın hiçbir yolu yoktur. –

+0

Bu, http://stackoverflow.com/questions/16268930/wolfram-api-javascript-cross-origin-sharing-issue dosyasının bir kopyasıdır. Lütfen ödülü kaldırın ve soruyu kapatın. –

+0

@AndyRay bu sorunun yanıtı yok. Benimki özellikle farklıdır çünkü –

cevap

2

o rota crossorigin.me aracılığıyla olsun isteklerini olabilir küçük bir proje buysa. Aksi takdirde wolfram alfa isteklerini bildiren ve Access-Control-Allow Origin başlığını uygun şekilde ayarlayan bir sunucuyu kendiniz çalıştırmanız gerekir. Hatta bu vekil sunuculardan birini ücretsiz olarak ya da ucuza şimdi. Başlığı düzgün bir şekilde ayarlayan ve POST'ları github API'sine yeniden yönlendiren benzer bir basit uygulama github-issue-filer var.

+0

alternatifleri için daha iyi bir çözüm verilmezse crossorigin.me'yi kullanacağımı düşünüyorum. Neden bu "küçük bir proje" olmalı? Teşekkürler! –

+1

crossorigin.me sitesinin sahibi ücretsiz bir site olarak çalışıyor, bu yüzden tonlarca trafik sürüyorsanız cömertliklerini kötüye kullanmamanız iyi olurdu :-) –

İlgili konular