We had built widgets for Facebook in Salesforce (Force.Com) Enterprise Version Environment using their API which has stopped working from some time.
We are getting error of "Unknown field:Username" when we are using username in the endpoint url on the profile search. Although, we know that username is no longer available in the endpoint URL from V2.0. So , anyone kindly suggest any other way to make profile search possible(on username) without using username in the endpoint URL.
Error : (#100) Unknown fields: username
Simply put:
To search for a username is no longer possible. You can try
/search?q=mark%20zuckerberg&type=user
to search for a user by his real name.
Related
i'm encountering an issue with Facebook login, short context:
We have our auth service in scala
We use a connect.app in vuejs to call our auth service
Facebook login was working like 6 month before
i noticed that Facebook removed our API access due to lack of privacy policy link
i changed the privacy link and clicked on " restore access"
I checked AP ID and Secretkey on our env and it's correct
When i try to login with facebook, i get this message issue on click
Then when i click on "okay" i have more info about error : Invalid value for: query parameter state.
I don't know what i should do to make it works again.
Thanks in advance for your friendly help.
I have working log-in process with Facebook using Kinvey MIC in my NativeScript app. I am able to log-in into the Kinvey and _socialIdentity record is successfully created. Due to the fact that I need to know also user's email registered with FB account (that is not sent in basic User response from FB), I need to query FB Graph API for that.
https://graph.facebook.com/v3.2/me?fields=id,name,email&access_token= + accessToken
If I use a accessToken stored in Kinvey's _socialIdentity, FB returns:
"error": {
JS: "message": "Invalid OAuth access token.",
JS: "type": "OAuthException",
JS: "code": 190,
JS: }
If I use accessToken generated by FB developers tool and hardcode it into my NS code, everything works well - I receive all requested info.
The difference I found is length of the accessToken:
accessToken stored in Kinvey has 40 characters but the one generated by FB tools has 247 characters.
Could somebody explain why FB accessToken in Kinvey's _socialIdentity is short/impossible for further use or how to get a valid accessToken using kinvey-nativescript-sdk?
Also if somebody achieved to get an user's contact email from FB account using kinvey-nativescript-sdk.
Thank you
Can you try adding client_token to the Allowed Attributes section of the Mobile Identity Connect service configuration?
That will create a new attribute on the kinveyAuth object (that is contained in the _socialIdentity attribute of the User entity), which will hold the access token that you are talking about.
Can you try that, and let me know if it works?
Edit: You can also try adding idp_access_token to the Allowed Attributes section. That will directly create an attribute to the kinveyAuth entity, which will hold only the needed token.
I have created app in Facebook developer account, I have set the site URL: http://www.xxxxxxx.com
If I open the page from www.xxxxxxx.com, then it works perfectly.
If I open the page from xxxxxxx.com, then it produces the following error:
An error occurred. Please try again later.
API Error Code: 191
API Error Description: The specified URL is not owned by the application
Error Message: redirect_uri is not owned by the application
How should I specify my URL in my app to avoid this error?
You can set URLs in the settings of your app on facebook. Add xxxxxxx.com to the form field to make it work (additionally to the www.xxxxxxx.com).
You can only use URLs that are owned / set up, correctly.
I want to get the emails of my friends using FQL, so I pass the permission "proxied_email" to Facebook SDK. It shows error on FB dialog:
"Invalid parameter. Error message: Unsupported scrop: "proxied_email".
I think this is a bug
Apparently this link says that I need the permission "proxied_email"
Is it a bug???
By the way, I can't get the email, it always returns null. How to do it?
proxied_email is not a permission, but a field in the User FQL table. This is why you get an error.
You must ask for the email permission to get the email.
Here is how to get the email:
SELECT email FROM user WHERE uid=USER_ID
When i'm trying to log in to facebook with button from fbconnect module, I am getting nullpointer at this line:
String email = data.get("email").getAsString();
where data is JsonObject. So I checked this json response from facebook, and found that has many data, but email isn't included.
I suppose i have to change something in fbconnect module, like change request, to get more data from facebook, can somebody tell me where and how ?
Im talking about play framework ofc.
You need the email extended permission to access the email field for a user - ensure you have this by calling /me/permissions with your access token - it'll show you the permissions your access token has
Add the email scope tag to your fbconnect button:
#{fbconnect.button label:'Login using your facebook account.', scope:'email'/}