OAuth.net 2.0 has become the connecting point for social media. It is the bridge that connects us to social media sites for a large number of situations. The issue is that instead of staying true to a interconnection method that always works in the same manner to make the connection of APPs and websites easier, the introduction of OAuth.net 2.0 removed much of the commonality and "open source" standards and eliminated many things that should have not been done, in my opinion. You can read the opinion of Eran Hammer, who left the OAuth.net over the same issues I mention here. Erin's Article is found at http://hueniverse.com/2010/09/oauth-2-0-without-signatures-is-bad-for-the-web/
OAuth.net 2.0 & Social Media occurances has made it very hard for many people to understand how to integrate the APPs and websites with Facebook. Following tutorials and step by step procedures leaves many fraustrated and angry. In this posting I will detail some of my personal experiences and insights in integrating Facebook to APPs and websites. As far as I understand, Facecbook is the only entity that is using the versions of OAuth.net 2.0 that they do at the current time.
Here are some basic tips and undocumented clues that make it work more smoothly.
Tip 1. At the first sign of trouble secure your website with a SSL certificate. If you read the notes and programmer data, you will find mention after mention of this fact, but it seems to be contradicted in actual documentation for OAuth.net 2.0. Why? This is because the 2.0 version of OAuth.net can be customized by each user to adapt to their requirements. Facebook LOVES HTTPS! You will find this mentioned over and over in the Facebook Developer Area. So, even though for most OAuth.net 2.0 situations this would not be required, Facebook likes data from HTTPS sources. Sometimes the process works just fine. Sometimes, it does not. I can tell you that there have been many times where I just secured the site pushing to Facebook with an HTTPS prefix and all my hair-pulling ceased. We are still living with browser issues where certain browsers do not function correctly when you combine data from HTTP and HTTPS sources. Even though this was supposed to not be required for OAuth.net 2.0, it seems to be a constant for reliability within Facebook.
Tip 2. When pushing Data to a Facebook business page there is a process and it should not be rushed. In the OAuth.net 2.0 process for Facebook, you need to first establish a connection with a Facebook personal account that has at least a "content creator" role on the Facebook business page that you intend to connect. Once that is done, walk away for up to 24 hours before taking the next step. Why? It just seems to work better to allow information to migrate to all Facebook servers before tying to link to the Facebook business page. After 24 hours, attempt to connect up the process to the Facebook business page.
Tip 3. When you build your OAuth.net 2.0 connection to Facebook, make sure you carefully comprehend what you are asking to APP to do. You need to add and save each action you choose to link. You will find these under "Review Status" in the "Facebook Developer Area." You need to set and authorize permissions for actions such as Follow, Like, Read, Publish, and so on. Usually, you will need to repeat the process in two steps in your APP or on your Website. Those steps will be to first authorize the action and then detail the function. Trying to do both at the same time seems to be another unpublished potential tripping point.
Tip 4. If your source of content dynamically changes to serve data based on other Meta, you need to push data from a cache to Facebook that is almost static. On many Real Estate websites the same URL address will not reproduce the same data minutes after you access it. They use AJAX, Java and a programming language like PHP or other dynamic sources to create page content. Sometimes they use various methods to serve data by IP address, browser of other end user details to create content. This again seems to be a migration issue to all the Facebook servers. If the data changes dynamically, I have experienced glitches and failures that seemed to disappear when I pushed from a static source. Also, I have also observed that Facebook will crawl sources for a good period of time after the data push. Are they verifying your data? I am still not sure as to the purpose of this. Perhaps it is just Graph Search getting better data for their search engine. It does stop and make you think!
Tip 5. Make sure that you complete the Facebook side of the APP by uploading all the images the development of the APP suggests. Why? Because you will run into a point where the APP selects a portion of an image from the source that looks bad, unplanned, sloppy and even inappropriate.
Tip 6. Remember to turn off the Sandbox (or testing) mode to take the APP features live. I have been called on at least 5 occasions in the past 2 months to fix an APP only to discover the the Sandbox remained active.
If you are totally lost, don't feel bad. Thousands of developers and programmers are too. Contact me and we will get you seamlessly transferring data. If you only knew how many times I have worked through hiccups and the notes I have regarding the OAuth.net process from trouble shooting these same issues, you would understand why I created this post.
You can find out more at OAuth.net
One last tip here. I have found it very useful to subscribe to the WordPress Pluigin RSS feed for the plugin that is devleoped and maintained by Facebook iteself. If you want to know how to tweak and update your interfaces over changes by Facebook, you can always subscribe to this WordPress RSS feed for support and find lots of clues on where you might be going wrong from the Facebook Plugin that Facebook itself maintains for WordPress. You can also download and open up this code and find all the clues you need to create your custom interface for non WordPress related tasks.
The plugin page is located at: http://wordpress.org/plugins/facebook/
You can subscribe to the Plugin Support RSS Feed at: http://wordpress.org/support/rss/plugin/facebook
I hope this helps you find clues for the unwritten steps to make your Facebook OAuth.net 2.0 work the way you want it.