Stack Exchange OpenIDサポートはどの追加値になりますか?
-
11-12-2019 - |
質問
username / display name
を取得しようとしていますが、サポートされている値は何もわかりません。email
とrealname
を手に入れましたが、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には表示名の概念がない、あなたのログインはあなたの電子メールアドレスです)ですが、オプションの "vanity ID"。
例えば:
https://ofollow.stackexchange.com/kevin.stackexchange.com/kevin.montrose 。これは、OpenID URLの手動入力を必要とする頼り当事者のためのエイリアスを覚えやすいだけです。
電子メールと実名/フルネームは唯一の属性の唯一の属性です。/browse/openidprovider/controllers/openidcontroller.cs#324 "コードのように" real="nofollow noreferrer">
所属していません StackOverflow