[OpenLayers-Users] proxy not working
Ivan Grcic
igrcic at gmail.com
Mon Feb 23 03:58:56 EST 2009
Hi,
first check if the normal request is working, without proxy. What does
firebug say if its not working?
On Mon, Feb 23, 2009 at 9:26 AM, george gpoul48 <gpoul48 at hotmail.com> wrote:
> Hallo everyone!!
> I use this proxy.py file and i am trying to get information for a map
> feature clicking on it, but the computer returns this message:
> "Some unexpected error occurred. Error text was:" Can anyone help me? Where
> am i wrong?
>
> See my map at http://84.205.237.73/default/mytest.aspx
>
>
>
>
> Proxy.py code
> #!C:/Python26/python.exe -u
>
> import urllib2
> import cgi
> import sys, os
> # Designed to prevent Open Proxy type stuff.
> allowedHosts = ['84.205.237.73:443', 'www.openlayers.org', 'openlayers.org',
> 'labs.metacarta.com', 'world.freemap.in',
> 'prototype.openmnnd.org', 'geo.openplans.org',
> 'sigma.openplans.org',
> 'www.openstreetmap.org']
> method = os.environ["REQUEST_METHOD"]
> if method == "POST":
> qs = os.environ["QUERY_STRING"]
> d = cgi.parse_qs(qs)
> if d.has_key("url"):
> url = d["url"][0]
> else:
> url = "http://www.openlayers.org"
> else:
> fs = cgi.FieldStorage()
> url = fs.getvalue('url', "http://www.openlayers.org")
> try:
> host = url.split("/")[2]
> if allowedHosts and not host in allowedHosts:
> print "Status: 502 Bad Gateway"
> print "Content-Type: text/plain"
> print
> print "This proxy does not allow you to access that location (%s)."
> % (host,)
> print
> print os.environ
>
> elif url.startswith("http://") or url.startswith("https://"):
>
> if method == "POST":
> length = int(os.environ["CONTENT_LENGTH"])
> headers = {"Content-Type": os.environ["CONTENT_TYPE"]}
> body = sys.stdin.read(length)
> r = urllib2.Request(url, body, headers)
> y = urllib2.urlopen(r)
> else:
> y = urllib2.urlopen(url)
>
> # print content type header
> i = y.info()
> if i.has_key("Content-Type"):
> print "Content-Type: %s" % (i["Content-Type"])
> else:
> print "Content-Type: text/plain"
> print
>
> print y.read()
>
> y.close()
> else:
> print "Content-Type: text/plain"
> print
> print "Illegal request."
> except Exception, E:
> print "Status: 500 Unexpected Error"
> print "Content-Type: text/plain"
> print
> print "Some unexpected error occurred. Error text was:", E
>
> ------------------------------------------------------------------
>
> getfeatureinfo code
>
> .
> .
> .
> OpenLayers.ProxyHost = "/script/proxy.py?url=";
> .
> .
> .
> map.events.register('click', map, function (e) {
> document.getElementById('nodelist').innerHTML = "Please
> wait...";
> var params = {
> REQUEST: "GetFeatureInfo",
> EXCEPTIONS: "application/vnd.ogc.se_xml",
> BBOX: map.getExtent().toBBOX(),
> X: e.xy.x,
> Y: e.xy.y,
> INFO_FORMAT: 'text/html',
> QUERY_LAYERS: map.layers[0].params.LAYERS,
> FEATURE_COUNT: 50,
> Layers: 'Tinos:dimoi',
> Styles: '',
> Srs: 'EPSG:900913',
> WIDTH: map.size.w,
> HEIGHT: map.size.h,
> format: format};
>
> OpenLayers.loadURL("http://84.205.237.73:443/geoserver/wms", params, this,
> setHTML, setHTML);
> OpenLayers.Event.stop(e);
> });
>
>
> // sets the HTML provided into the nodelist element
> function setHTML(response){
> document.getElementById('nodelist').innerHTML =
> response.responseText;
> };
>
>
> ________________________________
> Κάντε κλικ για να παίξετε Fishticuffs με τους φίλους σας, τώρα! Κάντε κλικ
> εδώ!
> _______________________________________________
> Users mailing list
> Users at openlayers.org
> http://openlayers.org/mailman/listinfo/users
>
>
--
Ivan Grcic
More information about the Users
mailing list