iOS Facebook SDK searching for users with Graph search - ios

I am new to Graph Search, and I want to search for a user with an email address. Is that possible? Right now, I only know how to search with their name, like this:
https://graph.facebook.com/search?q=chandler+de+angelis&type=user&access_token={access_token}
I have an email address, and I need to check if there is a Facebook account with the same email address. How can I accomplish this?

The answer to this is from Facebook themselves. In post at https://developers.facebook.com/bugs/335452696581712 a Facebook dev says
The ability to pass in an e-mail address into the "user" search type
was removed on July 10, 2013. This search type only returns results
that match a user's name (including alternate name).
That's Facebook's new rules.

Related

Google multiple accounts - In URL selection by email instead of by user number

When accessing multiple Google accounts from the browser, with multiple accounts logged in, Google will allow selecting the proper account using a number that identifies the chronologically logged in user, with the syntax:
https://<service-name>/u/<user-number>/
For instance:
https://mail.google.com/mail/u/0/#inbox
https://contacts.google.com/u/2/preview/all
I wonder if is there a way to use an URL where the user-number is replaced with the user email....
This seems to work for Gmail
On Desktop:
https://accounts.google.com/AccountChooser?continue=https%3A%2F%2Fmail.google.com%2Fmail%2Fu%2F%3Fauthuser%3DUSERNAME%40DOMAIN&service=mail&Email=USERNAME#DOMAIN
For mobile:
https://accounts.google.com/AccountChooser?continue=https%3A%2F%2Fmail.google.com%2Fmail%2Fmu%2Fmp%2F%3Fauthuser%3DUSERNAME%40DOMAIN&service=mail&Email=USERNAME#DOMAIN
Use this solution https://mail.google.com/mail/u/?authuser=user#gmail.com
Taken from this link https://webapps.stackexchange.com/questions/18959/can-i-form-a-direct-url-to-a-particular-gmail-account/49168#49168
For Google calendar, use:
https://accounts.google.com/AccountChooser?continue=https%3A%2F%2Fcalendar.google.com%2Fcalendar%2Fb%2FUSERNAME%40DOMAIN&Email=USERNAME#DOMAIN
Thats what I got from altering the Riccardo's URL.

how to get facebook user id or user name with email id

I am developing a MVC project where I am trying to get the user id or user name from the facebook by using the email id provided by the user,
actually i want to fetch the photo of the user, which can be done using
graph.facebook.com/user_id|user_name/picture
where as i have only have the user email id.
with a little surfing on net i found that user name or user id can be fetched by using
graph.facebook.com/search?q=emailAddress&type=user&access_token=ACCESSTOKEN
but i was not able to get the access_token.
Also referred
developer facebook page
and also this
Any help or direction to work will help indeed.
Basically i understand that i need a access token to get the details.
So how do i do this in my MVC application
As you can read in the Search API docs, you can only search for Users by name, but not by E-Mail. It may have been possible in the past, but it is definitely not possible anymore.
Also, for searching by name, you need to use a User Access Token. You only get one by authorizing a User: https://developers.facebook.com/docs/facebook-login

ios how to retrieve the email addresses from contacts,mail?

i want to retrieve the email ids of users exist in contact and mail app in the device.It just like there is search field to search the user email id and the fallowed table will show the results that contains the search text.And the users email id's need to search in contacts and mail.
can anyone help me out.
You cannot grab any information from the mail.app on an iDevice. Apple's Sandbox rules prevent this sort of thing.
With the contacts - it's possible. You should read up on the Address framework.
Here's Apple documentation on it: https://developer.apple.com/library/ios/documentation/AddressBook/Reference/AddressBook_iPhoneOS_Framework/_index.html

Implementing normal user/pass, Twitter & Facebook auth

I have created a public facing website which allows you to login using a username/password, or with Twitter, or with Facebook.
When logging in with Twitter for the first time (for example), a user is created in my database with a nickname matching the Twitter screen name. I want this nickname to always be unique.
The problem is that in some cases a user with that nickname already exists, so the user can't be added. I am unsure as to the accepted approach for this problem, the only solution I can see so far is to ask the user to override their nickname, but this doesn't seem too elegant.
The reason the nickname needs to be unique is not a code issue, but an interface issue, for example there are forums and I want each user to be uniquely identified by their nickname.
Are there any other methods anyone can suggest for dealing with this problem?
Edit: At the request of some of the replies I will clarify an example:
Lets say I have a user named Joe Bloggs who is a member on my website. He is not a member of Twitter or Facebook. His nickname on my site is JoeBloggs.
Then, another Joe Bloggs comes along, and wants to sign in with his Twitter account. His Twitter name is JoeBloggs, so when he signs in with Twitter, my system attempts to automatically set his nickname to JoeBloggs. However, this nickname already exists. What is the normal or best practice in the cases where nicknames like this overlap? The only thing I can think of is to prompt the user to specify a different and unique nickname (just for display on my site).
The reason I ask is that this must be a common issue for sites which let you login via Facebook, Twitter, Yahoo - there must be an overlap in the names which are returned from said websites, so I wondered what the normal process is.
Could you use the Twitter API to confirm they really are the Twitter ID they say they are, and if no Twitter account, allow them other means to authenticate (Google+, Facebook, LinkedIn, old school username and password)? Allowing users to login with a Twitter ID that they don't own seems like asking for a world of hurt.
Maybe you could try and change the database itself - get a field like 'nickOrigin', allow there values like '[yourSite]', 'twitter', etc., and only allow new entries if no entry with the same nick AND nickOrigin exists. Execute a query to modify existing users to have a nickOrigin of [yourSite], and things should be backwards compatable, or at least I imagine them that way :)

Getting user Email Yahoo Oauth (using Scribe-Java API)

Trying to access user profile from Yahoo using Oauth system and for that i am taking help of Scribe-Java API
its working fine except one issue whcih i am sure not related to the API i am using
In my yahoo profile i have following settings
Yahoo! Email --->amy_yahoo_id#yahoo.com
Email--->other_id#gmail.com Primary - Change
So what i am getting back is other_id#gmail.com which means i am not able to get correct information of the logged in user.Once i am able to get guid i am sending the request to following URL
http://social.yahooapis.com/v1/user/guid/profile?format=json
any way i can get the yahoo mail id to which user is associated in place of other id even if that is set as primary or along with any other email id all i want is to get the yahoo mail id of the user by which he/she logged in to the system.
Is there any specific reason you must get the yahoo account's email?
I also facing the same problem as you earlier.
After think over, primary email means to be the contactable email for the user.
So may be that's why yahoo make it that way.
Of course it will be good if they can provide one more email which is account's email.
But if you just want to have unique identifier, we can use the guid.
So may be you can check again, does your requirement must have the account's email?
or you just need an email where user set primary because they preferred to be contactable by that email?
Now I will just make use of the primary email return from Yahoo for my OAuth

Resources