top.window.location from within a facebook canvas app? - facebook

There are circumstances where I'd like a link to break out of facebook canvas' iframe. For example, if I'm linking to to the apple app store, it seems more prudent to have the link target="_top" or top.window.location.
Are there any circumstances in which it is against fb policy to link out to the top window?

I think you have to do this if you are setting cookies and such. When the user first visits, I capture the signed_request, and send them to a different URL via window.parent.location.
Then once they've authenticated on my domain (where I can set 1st party cookies easily), I send them back into the canvas application to a specific page.
If there's a better way I'd love to hear it.

Related

How to implement href attribute in facebook notification?

From FB oficial documentation
When people click the notification, they'll be taken to a URL you
specify with the notification.
I have been strugling to understand what canvas app actually is. I have managed to actually send and recieve notification, however when clicking to notification fb redirects me to apps.facebook.com/1111111111111111/home?fb_source=notification&fb_ref=test where a lot of 1`s is meant my app id(did not know if I should protect that so better protect) and "home" is href I specified in href parameter when making post to userid/notifications endpoint. The first part is exactly as in my settings tab listed canvas page but I can not change it.
I expected that on click I would be redirected to my website. Could some one please explaine me what have I misunderstood? I think the problem is that I really do not understand what fb canvas app is and how it works.

Redirect Facebook App To External Page

I'm having issues configuring my Facebook app to behave as I want when posting information via the Feed Dialog. I've set up an app and created a link that correctly posts my content when clicked, but I can't figure out how to make the link to the app in the resulting post redirect where I want it to.
As an example, here's a post made via Instagram.
If I click on the 'via Instagram' link, I get either prompted or automatically redirected from the destination URL http://www.facebook.com/apps/application.php?id=124024574287414 to www.instagram.com.
I've seen other posts suggest you can do something similar using a JavaScript redirect from the App Canvas page, and I've got a proof of concept doing this, but since I've seen Instagram and other apps do this seemingly internally to Facebook I'm convinced it's possible to do more cleanly.
That link goes to your app's canvas URL (apps.facebook.com/something) or website URL as defined in the app settings, it can't be configured with any more granularity.
This seems that it will probably do the trick most easily: http://woobox.com/statichtml
See the redirect radio button in the image they have.

Facebook-App without SSL

I'm running a litte webpage with an online game and I want to display the current ranking on the facebook fan page of this game.
So I thought of creating an app, which does nothing else than including the ranking in the app canvas, so that I can use this app on the fan page.
But I have first absolutely no experience with SSL and second do not want to buy a certificate. Is there any possibility of doing what I have in mind without SSL?
It's only importing data into the fan page. There is no interaction with user data, so there is even no necessity for SSL.
Thanks in advance.
You can enter an invalid URL under Secure Canvas URL field in the application settings section.
The problem is that all users who use Facebook's secure browsing won't be able to see your app since they are redirected automatically to the secure canvas URL.

App on Facebook mobile gives me 4oh4 / 404

we have created a Facebook app, but when opening this on a mobile (via Web or iPhone) the page results in a 4oh4 error. I have setup a Mobile Web URL but still (after 1 hour wait) gives a 404.
Do I need to make specific changes on my app?
Please help.
This is expected as #Igy stated. You will need to have a handler to support redirecting mobile users to your apps.facebook.com/ or you can redirect them out of Facebook to your own URL if you are going to try and link to your page directly with an app embedded as a tab.
i.e. point link to http://yoursite.com/redirector
is mobile goes to http://yoursite.com/myapp or http://apps.facebook.com/
non mobile goes to http://facebook.com//app_
Some things to note:
You won't get any page specific data back from facebook on your page (i.e. Liked or Not Liked).
Based on #1 you won't be able to restrict the non-liking app users from a page.
After trying everything under the sun to get Facebook to redirect to a mobile web URL, here is what I needed to do in order to get the redirection working:
Make sure the Facebook application is a canvas application. This gives you the ability to give the application a namespace.
Give your application a namespace so that you can access it through https://apps.facebook.com/NAMESPACE. From here, Facebook will do the detection for you, and if needed, redirect your users to your specified mobile URL.
Make sure your app is NOT in sandbox mode.
If your app is in Sandbox Mode, Facebook won't redirect you to the mobile version you have specified in your app settings.
Facebook does the redirecting for you, you don't have to. Although their version of what "mobile" is and what you deem "mobile" might be different.

Can I embed another users app in a html page on my website?

I have a non profit website dedicated to raising awareness about disabled dogs. We also allow users to post urgent dog rescues needed (dogs that are in kill shelters that will be euthanised within next 48hrs).
There is a FB app at http://pretpardons.com that I would like to add to my site to allow visitors to see in real time which animals are in desperate need of adoption/rescue.
Is there any way that I can embed this fb app on my site? I have the app id.
Many thanks for your help.
Best regards
Carl Hackman
Yes you can. you can put frame another's fb app as facebook frames it.
However, fb app on your site won't have signed_request, so authentication will be done
by client side with fb javascript sdk. This means there may be some work to fb app's owners