[Laszlo-user] Using PHP to proxy content

William Krick wkrick at eio-online.com
Wed Apr 5 12:12:57 EDT 2006


I don't know if this is useful in this case or not but it's possible to wrap
a call to a URL on a different server in a local JSP like this example
"getdata.jsp" that I use for calling a web service that returns XML...

<%
  try {
    String urlstring = "http://www.domain.com/webapp/getxmldata";
    URL url = new URL(urlstring);
    URLConnection con = url.openConnection();
    BufferedReader br = new BufferedReader(new
InputStreamReader(con.getInputStream()));
    String line = "";
    while ((line = br.readLine()) != null)
      out.println(line);
    br.close();
  }
  catch (Exception e) {
    // handle exceptions here
  }
%>
<%@page import="java.io.*"%>
<%@page import="java.net.*"%>
<%@page contentType="text/xml; charset=UTF-8" %>



...You can also relay parameters by using request.getQueryString() for GET
requests or request.getParameter() for POST requests to get at the data.

And if you really want to get fancy, you could "genericize" the whole thing
by passing the URL to call as the first parameter, followed by the
parameters to relay.

Note that you have to put the "import" and whatnot at the bottom when
dealing with XML otherwise they cause newlines to appear at the beginning of
the output which breaks stuff since the <xml> directive isn't the first line
in the document.



-----Original Message-----
From: Benjamin Shine [mailto:ben at laszlosystems.com]
Sent: Wednesday, April 05, 2006 11:53 AM
To: Matt Hubbard
Cc: laszlo-user at openlaszlo.org
Subject: Re: [Laszlo-user] Using PHP to proxy content


This sounds like a crossdomain.xml problem. Flash doesn't let you
load content from another domain than the one that served up the swf
unless the other domain has crossdomain.xml on it and includes your
domain in the list of allowed domains.
In this example, you own example.com, right? So you could put your
own crossdomain.xml on it, which should take care of it.

-ben

On Apr 5, 2006, at 5:37 AM, Matt Hubbard wrote:

> Hello,
>
> My environment:
> Linux
> lps-3.1.1
> Flash 7 plugin
> SOLO deployment
>
> I am attempting to proxy an swf from another domain into an openlaszlo
> text view using a server-side proxy written in php.  In lzx I create a
> URL to that points to the proxy script passing several parameters
> (session id, action to be executed, and a urlencoded filename).
>
> var asset = '<img src="' + gateway + '?PHPSESSID=' + canvas.sid +
> '&assetSrc=' + assetSrc + '&action=media' + '"/>';
>
> Then I add the resulting <img> tag to a text view called content:
>
> content.addText(asset);
>
> I don't get an error, but nothing shows up.  If I write  the asset var
> to the Debugger it reads correctly and if I visit that same url
> with my
> browser directly it returns and plays the animation just fine, so I
> think the php works.  I notice that if I change my proxy call from:
>
> http://www.example.com/proxy.php?x=y&a=b
>
> to
>
> http://www.example.com/proxy.swf
> (here proxy.swf is my php proxy script with a hardcoded url to
> retrieve
> )
>
> Suddenly it works.  However, I need to be able to pass the resource to
> retrieve to the proxy.  Can anyone shed some light on what I need
> to do
> to get the text view to recognize my url as a call for flash?
>
> Many thanks,
>
> Matt Hubbard
>
>
>
>
> _______________________________________________
> Laszlo-user mailing list
> Laszlo-user at openlaszlo.org
> http://www.openlaszlo.org/mailman/listinfo/laszlo-user

benjamin shine
software engineer
ben at laszlosystems.com



_______________________________________________
Laszlo-user mailing list
Laszlo-user at openlaszlo.org
http://www.openlaszlo.org/mailman/listinfo/laszlo-user




More information about the Laszlo-user mailing list