XMLHttpRequest cannot load No 'Access-Control-Allow-Origin

Status
Niet open voor verdere reacties.

tim687

Terugkerende gebruiker
Lid geworden
25 apr 2010
Berichten
1.774
Beste leden,
Ik ben met een project bezig waarbij ik 2 webservers draaiende heb (op dezelfde host)

De eerste is de IIS
en de tweede is een programma dat jsons post.

Nu wil ik met javascript de json die op de hostnaam:8085/data.json staat benaderen maar ik krijg een "XMLHttpRequest cannot load http://home:8085/data.json. No 'Access-Control-Allow-Origin' header is present on the requested resource" error

Ik kan alleen de IIS aanpassen en niet het programma aangezien ik de code daar niet van heb.

Hoe moet ik hostnaam:8085/data.json laden vanuit hostnaam/document.html?


Hartelijk bedankt,
Tim
 
Als je op hetzelfde domein zit zou dat ook niet nodig moeten zijn. Vraag je de HTML lokaal op met localhost/pagina.html misschien?

Anders kun je ook proberen jQuery.getJSON te gebruiken i.p.v. xmlhttp
 
De "hoofdpagina" zit op het domein hostnaam/home.html
het json bestand zit op het domein hostnaam:8085/data.json


De manier waarop ik de data.json opvraag is door host + json in te vullen bij $.getJSON(host + json, function(data)
hierbij is host de (volledige) hostnaam met http://hostnaam:8085/
en json is data.json

Bedankt,
Tim
 
Kun je niets instellen aan het tweede programma? ook geen support voor JSONP ? Want dan wordt het wel een probleem. Tenminste, voor javascript. Je zou het kunnen backloaden met PHP of zo als workaround, maar dan ben je dus aan het hacken.
 
dat maakt niet uit het is m'n eigen server :p

Ik heb de code van het programma, maar als het programma wordt geupdate moet ik die ook weer updaten en dat kost tijd, vandaar dat ik het zo wil doen.

Kan ik niet in mijn IIS server een data.json aanmaken die verwijs naar hostname:8085/data.json dat de inhoud van de "echte" data.json in de "neppe" data.json komt
 
Ja, tenminste ik denk dat je hetzelfde bedoeld als ik mijn vorige post bedoelde met "backloaden met PHP". Als het statische data is (tenminste: statisch per view) kun je het wat mij betreft sowieso beter met een server engine inladen dan met JS.
 
De data is niet statisch, deze veranderd per seconde. Daar komt nog een probleem om de hoek kijken denk ik, als ik hem wil backloaden is de serverload hoog
 
Pas op: ik bedoel statisch "per view". Dus je laad de pagina en de huidige informatie blijft staan. Of wil je echt zonder de pagina te herladen elke seconde nieuwe data op de bestaande pagina dumpen?

In het laatste geval is de load altijd hoog, onafhankelijk van de methode (directe JS of backloading). Indien je enkel de huidige informatie laad als de pagina wordt getoond, maar niet actief updates binnenhaalt hoef je alleen te backloaden als de pagina geladen wordt, niet elke seconde.
 
Ik heb geen servers die op windows draaien. De server ondersteund inderdaad geen JSON-P van nature en de extra documentatie van het project is niet compleet (zacht uitgedrukt).
 
Het is een windows programma, niet bedoelt voor servers :p
maar omdat de "server" in een kleine ruimte staat wil ik de temperaturen en de schijf gebruik kunnen meten,
als ik de normale pagina van het programma open krijg ik een was lijst die totaal niet overeenkomt met de kleuren combinatie die ik gebruik
Ik stuurde de link omdat ik u wilde laten zien wat ik bedoelde met om de seconden vernieuwen

EDIT:

Ik heb uiteindelijk toch maar de code van het programma gewijzigd aangezien het programma zelf al meer als 1 jaar niet meer was geupdate.

Ik heb dit toegevoegd (C#) voor de geïnteresseerde

Bij elke Send....(response) deze toevoegen
Code:
response.AppendHeader("Access-Control-Allow-Origin", "*"); //allow access from the same hostname


Bedankt,
Tim
 
Laatst bewerkt:
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan