I'm using Facebook UI Send Dialog so the users of my website can share a link with their friends. The link includes the Facebook User ID in the query string. Everything works fine except for a few users that have reported errors.
To test this, I considered to cases: one for a Facebook user that can use the Send Dialog without a problem, and another for a user that reported the error. I used two identical calls to Fb, only changing the userID and, as described previously, one worked and the other didn't.
This works ok:
https:// www.facebook.com/dialog/send?access_token=XXXXXX&app_id=XXXXXX&channel=https%3A%2F%2Fs-static.ak.facebook.com%2Fconnect%2Fxd_arbiter%2FZEbdHPQfV3x.js%3Fversion%3D41%23cb%3Df1adbecbf8%26domain%3D3Dmyworkingurl.com%26origin%3Dhttps%253A%252F%252F3Dmyworkingurl.com%252Ff524fe64%26relation%3Dparent.parent&channel_url=https%3A%2F%2Fs-static.ak.facebook.com%2Fconnect%2Fxd_arbiter%2FZEbdHPQfV3x.js%3Fversion%3D41%23cb%3Df2c646879%26domain%3D3Dmyworkingurl.com%26origin%3Dhttps%253A%252F%252F3Dmyworkingurl.com%252Ff524fe64%26relation%3Dparent.parent&description=pruebafb&display=iframe&e2e=%7B%7D&link=https%3A%2F%2F3Dmyworkingurl.com%2F%3Ffbid%3D**WorkingFbUserId**&locale=es_LA&next=https%3A%2F%2Fs-static.ak.facebook.com%2Fconnect%2Fxd_arbiter%2FZEbdHPQfV3x.js%3Fversion%3D41%23cb%3Df206f6e03%26domain%3D3Dmyworkingurl.com%26origin%3Dhttps%253A%252F%252F3Dmyworkingurl.com%252Ff524fe64%26relation%3Dparent%26frame%3Df34cf0b14%26result%3D%2522xxRESULTTOKENxx%2522&sdk=joey&to=XXXXXXXXX
This returns a HTTP Error 500:
https:// www.facebook.com/dialog/send?access_token=XXXXXX&app_id=XXXXXX&channel=https%3A%2F%2Fs-static.ak.facebook.com%2Fconnect%2Fxd_arbiter%2FZEbdHPQfV3x.js%3Fversion%3D41%23cb%3Df17fb992a8%26domain%3Dmyworkingurl.com%26origin%3Dhttps%253A%252F%252F3Dmyworkingurl.com%252Ff271eb6f14%26relation%3Dparent.parent&channel_url=https%3A%2F%2Fs-static.ak.facebook.com%2Fconnect%2Fxd_arbiter%2FZEbdHPQfV3x.js%3Fversion%3D41%23cb%3Df28b526904%26domain%3D3Dmyworkingurl.com%26origin%3Dhttps%253A%252F%252F3Dmyworkingurl.com%252Ff271eb6f14%26relation%3Dparent.parent&description=pruebafb&display=iframe&e2e=%7B%7D&link=https%3A%2F%2F3Dmyworkingurl.com%2F%3Ffbid%3D**NotWorkingFbUserId**&locale=es_LA&next=https%3A%2F%2Fs-static.ak.facebook.com%2Fconnect%2Fxd_arbiter%2FZEbdHPQfV3x.js%3Fversion%3D41%23cb%3Df184d49ae%26domain%3D3Dmyworkingurl.com%26origin%3Dhttps%253A%252F%252F3Dmyworkingurl.com%252Ff271eb6f14%26relation%3Dparent%26frame%3Df567db08%26result%3D%2522xxRESULTTOKENxx%2522&sdk=joey&to=XXXXXXXXX
I tested the link urls using https://developers.facebook.com/tools/debug/ and both returned Response code 200.
Do you have an idea on why is this happening only for some users even when they return a successful response using the Facebook debugger?
Thanks :)
Most probably you are suffering from this bug: https://developers.facebook.com/bugs/1478339672437492/
The bug was already seen by Facebook Team and it is already assigned to someone to solve. I know this because unfortunately it affected me too.
As this is affecting a lot of developers, I guess it won't take too long to be fixed.
To be in record for future Google searches, this was the bug:
Since this morning the FB Send Dialog redirects to an empty page
regardless of the parameters. Even the example from the documentation
(
FB.ui({ method: 'send', link:
'http://www.nytimes.com/2011/06/15/arts/people-argue-just-to-win-scholars-assert.html',
});
http://www.facebook.com/dialog/send? app_id=123050457758183
&link=http://www.nytimes.com/2011/06/15/arts/people-argue-just-to-win-scholars-assert.html
&redirect_uri=https://www.bancsabadell.com/cs/Satellite/SabAtl/
)
is not working anymore. Please see into this, thank you very much.
Last known working date: September 22, 2014
According to Facebook it should now be solved:
Øyvind Sean Kinsey · · Facebook Platform Team
This should now be resolved. Thanks for your
patience.
2 hours ago · Status changed to Fixed
Related
Few of our websites like womens-health.com.my, mens-health.com.my, and elle.my having problem post any article to Facebook. When I test any URLs of these websites in Facebook Debugger, it gave me warning messages said that Failed to get composer template data. and Critical Errors That Must Be Fixed. I have no idea what causing this as other of our websites are working fine.
It's an actual Facebook bug, which is being fixed right now: https://developers.facebook.com/bugs/918385908182634/
In summary, you can fix this by making sure that article:author only contains Facebook user IDs or Facebook profile URLs.
We have a facebook website application that posts to user home page feeds as well as feeds to pages which they administer.
Until recently everything worked fine (maybe until the beginning of the year when the 1.0 API was discontinued). The problem turns out to be the presence of the "link" field.
All is well when posting to a user home page. But when we post to a another page the user is an admin of (or a group), the call fails with the following error.
The error that returns is:
{ message: '(#200) Permissions error',
type: 'OAuthException',
code: 200 }
Removing the link field is enough to make the call work again. I had thought we might affected by this issue: Stream post URL security - Website/FB page url. However, our applications Stream post URL security migration is set to off and we are linking to a url in our domain. When posting to a home page the url can be within our app domain or without and all works fine.
As I've been testing I've boiled the calls down to the following in every version of the api.
{{facebookId}}/feed?link=http://cir.cl
{{pageId}}/feed?link=http://cir.cl
For the former we use the long-lived token we got after authenticating. For the latter we use the token returned by {{facebookId}}/accounts or {{facebookId}}/groups. The former works. The latter fails, but changing link to message=foo works fine.
Has anyone noticed a breaking change that touches on this issue?
It turns out it's a valid bug and our friends at Facebook are addressing it:
https://developers.facebook.com/bugs/755514351208694
How often does that happen? I'm just surprised the internet isn't blowing up about this. Dozens and dozens and dozens of applications must be affected.
I have encountered a GraphAPIError: (#500) Message contains banned content problem today when I use GRAPH API (via python) to POST URLs (even post http://www.google.com failed, but if I post it directly through my facebook page, it works)as comments. It used to working correctly.
Does anyone encounter the same problem or know how to solve that?
Thank you.
For anyone else having this issue - seems that if an FB user who is NOT validated with FB (hasn't given FB their cell phone etc) comments on some posts, they can get a 500 error. Once validated the error doesn't happen
I am trying to post a URL to a facebook page. using PHP SDK.
I am able to post successfully from my localhost. But on the live server, I get the result "Sorry, something went wrong".
when running the code from live server, I have no problem obtaining access_token to post to the page.
Only the posting will not work.
I tried to post the link manually using the graph api explorer. and found that
I am ABLE to post a message successfully via the graph api explorer.
I am NOT able to post a URL via the graph api explorer. I get the error
"(#100) link URL is not properly formatted"
I do encode the link that i am trying to post. and they are valid, existing links.
I even tried using http%3A%2F%2Fgoogle.com , and it would return the same error.
Some Other information
The code is executed from mydomainname.com/folder/
I have added the domain name to "App Domains" field.
Sandbox Mode is On.
When I tested from my local, I was able to post 25 links to the
page.[after which it was giving errors]. When things were not
working at the live server, I came back to locahost to again test
with 25 links and more and found things to be working fine from
localhost. I wonder if I hit some limit or my application has been
black listed.
Anyone has got any ideas?
Thanks
UPDATE
I took the URL that was used by the live server (to post link to the facebook page) , and used fiddler to post it from my local machine. and it worked.
so i am wondering whats preventing the code from working successfully from the server?
I tried the same code from another domain and it worked.
I am yet to find out if it was not working because of the way the 1st domain was sending CURL requests, or if the domain was blacklisted for posting too much in the past.
either way, facebooks error messages are not at all helpful!
If you're using your own wall, notice the difference between:
"me/feed" and "me/photos" url. The first one doesn't work!!!
I also tried the same thing but unfortunately it works for online images but not for local ones. i.e
'picture' => class_exists('CurlFile', false) ?
new CURLFile($photo, 'image/jpg') : "#{$photo}",
will not work, but
'picture' => "http://i.stack.imgur.com/VGWZD.jpg?s=24&g=1",
will work
I also had some problems with this. Weirdly enough it only worked when I sent the url to the picture without any URL encoding via the POST request to the Graph API.
Try the link without the quotation marks "". I was stuck as you but not any more without the quotation marks.
If i like a page on my website. It is posted to facebook. The problem is when a second user clicks the like on facebook. They are taken to a 403 forbidden page.
likes on http://www.cmypictures.com/photos/index.html
result to
http://www.cmypictures.com/photos/index.html?fb_action_ids=10151367960904866&fb_action_types=og.likes&fb_source=timeline_og&action_object_map=%7B%2210151367960904866%22%3A10150286116634264%7D&action_type_map=%7B%2210151367960904866%22%3A%22og.likes%22%7D&action_ref_map=%5B%5D
i have noted that if i manually delete %3A"og.likes"%7D&action_ref_map=%5B%5D at the end of the link, the desired page is opened.
Why is facebook adding this code at the end and what can be done to avoid this? Just to mention I run my website on joomla.
Please help
Facebook adds this for referral purposes so you can see the data in /analytics. As mentioned by #igy you need to check your CMS as it is not handling the params properly.
I had the same issue, I contacted my hosting provider and submitted a ticket, I have no idea what they did to fix this but it was sorted out pretty quickly. Something in the link may have been blacklisted or some combination of the '.' and the lenght of the link might have caused the issue. Contact your hosting provider for a solution.