Alejandro Castan
Alejandro Castan

Reputation: 101

About Getting Started with the Facebook SDK for Unity

I am trying the new Facebook SDK for Unity and I would like to deploy the example included in this SDK but like I am not running any web server. I installed the Python software in the default path (C:\Python33) and the I created web.py file and saved it into the built my Unity game (where is web.unity3d file). More info here.

See I don't have a web server available part.

Since my English is not so good, I could not understand the following part:

Then (install openssl)[http://www.openssl.org/related/binaries.html] if it isn't already on your computer. In the same directory as above, generate a key file:

openssl req -new -x509 -keyout server.pem -out server.pem -days 365 -nodes Provide a non-blank answer to each prompt (correctness won't matter, but empty values may).

Start the server:

python web.py

For this, could anybody explain to me how I would have to do it?

Upvotes: 0

Views: 1196

Answers (3)

Ricky
Ricky

Reputation: 840

you are installing the wrong python version. Use 2.7, not 3.3. 3.3 doesn't have that library.

Upvotes: 0

aaron
aaron

Reputation: 1796

Alejandro - you don't actually need to set up a localhost server, in fact, I don't recommend it unless you really want to iterate on some Facebook callbacks and you're having trouble getting them working.

Instead I would:

  • do in-editor testing just to see how things might work. The editor dialogs use fake data, but are indicative of the in-game experience.
  • push to a hosting site for live testing. e.g. use parse hosting and do 'parse deploy' to push a static file live. I can help with this if you'd like.

Thanks for checking out the SDK!

Upvotes: 0

phwd
phwd

Reputation: 19995

Facebook is providing instructions on how to deploy a simple web server locally if you don't already have one, specifically the SimpleHTTPServer one (http://docs.python.org/2/library/simplehttpserver.html). The prerequisite is to have a SSL/TLS-capable Web server. So

First Step: Allow for SSL capability by using openssl to generate a key file for use in the server. (Keep it in the same directory)

openssl req -new -x509 -keyout server.pem -out server.pem -days 365 -node

After executing this command, a series of prompts will be asked but for the purposes of the tutorial it isn't important what the values are as long as they are non-blank

Second Step: Create a file called web.py with the following contents

import BaseHTTPServer, SimpleHTTPServer
import ssl
httpd = BaseHTTPServer.HTTPServer(('localhost', 4443), SimpleHTTPServer.SimpleHTTPRequestHandler)
httpd.socket = ssl.wrap_socket (httpd.socket, certfile='server.pem', server_side=True)
httpd.serve_forever()

This line

httpd = BaseHTTPServer.HTTPServer(('localhost', 4443), SimpleHTTPServer.SimpleHTTPRequestHandler),

is how the server will be presented in a browser, https://localhost:44443/, where the game object will be at https://localhost:44443/web.unity3d

This line

httpd.socket = ssl.wrap_socket (httpd.socket, certfile='server.pem', server_side=True)

sets up SSL with the server key file generated earlier with openssl

Finally httpd.serve_forever() executes the requests and deploys the server at https://localhost:44443/

Third Step: Call the program just created by executing the following command

python web.py

Fourth Step: Navigate to https://localhost:44443/web.unity3d

Upvotes: 1

Related Questions