무엇을 추가 값은 스택 교환 OpenID 지원합니까?
-
11-12-2019 - |
문제
나를 얻으려고 노력 username / display name
, 하지만 나는 아이디어가 있지 않은 무엇이 지원되는 값입니다.나 email
고 realname
, 지만,I don't know what 반환합니다 username / display name
.
이 있는 문서 또는 무언가가 이것에 대해?
현재 코드:
public class StackExchangeOpenID : OpenIdClient
{
public StackExchangeOpenID()
: base("stackexchange", "https://openid.stackexchange.com")
{
}
protected override Dictionary<string, string> GetExtraData(IAuthenticationResponse response)
{
FetchResponse fetchResponse = response.GetExtension<FetchResponse>();
if (fetchResponse != null)
{
var extraData = new Dictionary<string, string>();
extraData.Add("email", fetchResponse.GetAttributeValue(WellKnownAttributes.Contact.Email));
extraData.Add("name", fetchResponse.GetAttributeValue(WellKnownAttributes.Name.FullName));
// returned value: null
//extraData.Add("username", fetchResponse.GetAttributeValue(WellKnownAttributes.Name.Alias));
return extraData;
}
return null;
}
protected override void OnBeforeSendingAuthenticationRequest(IAuthenticationRequest request)
{
var fetchRequest = new FetchRequest();
fetchRequest.Attributes.AddRequired(WellKnownAttributes.Contact.Email);
fetchRequest.Attributes.AddRequired(WellKnownAttributes.Name.FullName);
// returned value: null
//fetchRequest.Attributes.AddRequired(WellKnownAttributes.Name.Alias);
request.AddExtension(fetchRequest);
}
}
해결책
당신의 화살표가 가리키는 자신의하지 않 디스플레이름(StackID 개념이 없 디스플레이의 이름,로그인이 귀하의 이메일 주소)하지만 선택 사항"허영 Id".
예를 들어:
게 허영 OpenID 의 https://openid.stackexchange.com/kevin.montrose .이것은 단지는 쉽게 기억하는 별칭에 대한 의존하는 당사자는 필요의 수동 입력 OpenID url.
이메일과 실제 이름/전체 이름만 특성 StackID 지원하는 쿼리,그리고 반환 모두 중 하나를 통해 웃었거나 도끼 확장자(에서 볼 수 있듯이드).
제휴하지 않습니다 StackOverflow