Why picture claim of value not display when returning to client by using oidc external authentication

I'm using identity server 4 and aspnet.core 2.0, I want to configure external authentication. i got the external user info successfully,but can't get the picture of claim value. Here is my code below:

server site:

public void ConfigureServices(IServiceCollection services)
    {
        services.AddMvc();

        services.AddTransient<IHttpContextAccessor, HttpContextAccessor>();

        // configure identity server with in-memory stores, keys, clients and scopes
        services.AddIdentityServer()
            .AddDeveloperSigningCredential(filename:"tempkey.rsa")
            .AddInMemoryApiResources(Config.GetApiResources())
            .AddInMemoryIdentityResources(Config.GetIdentityResources())
            .AddInMemoryClients(Config.GetClients())
            .AddTestUsers(Config.GetUsers());

        services.AddAuthentication()
        .AddGoogle("Google", options =>
         {
             options.SignInScheme = IdentityServerConstants.ExternalCookieAuthenticationScheme;
             options.ClientId = "567198632326-spfmaicbtu8bli4km8sq624m80t9m80o.apps.googleusercontent.com";
             options.ClientSecret = "dWmmgRYnzD-NvIL8Su3WShl_";
         }).AddAlipay("Alipay", options =>
         {
             options.SignInScheme = IdentityServerConstants.ExternalCookieAuthenticationScheme;
             options.ClientId = "aa";
             options.ClientSecret = "bb";
             options.AppId = "my alipay appid";
             options.Key = "my rsa private key";
             options.SignFlag = "RSA2";
         });

        services.AddSession(options =>
        {
            options.Cookie.Name = ".fiver.session";
            options.IdleTimeout = TimeSpan.FromMinutes(10);
        });
    }

client:

public static IEnumerable<Client> GetClients()
    {
        return new List<Client>
        {
            // mvc identity core
            new Client
            {
                ClientId = "mvc",
                ClientName = "MVC Client",
                AllowedGrantTypes = GrantTypes.HybridAndClientCredentials,

                RequireConsent = false,

                ClientSecrets =
                {
                    new Secret("secret".Sha256())
                },

                RedirectUris           = { "https://localhost:44369/signin-oidc","http://jwtssotwo.shomethingshow.com/signin-oidc" },
                PostLogoutRedirectUris = { "https://localhost:44369/signout-callback-oidc","http://jwtssotwo.shomethingshow.com/signout-callback-oidc" },

                AllowedScopes =
                {
                    IdentityServerConstants.StandardScopes.OpenId,
                    IdentityServerConstants.StandardScopes.Profile,
                    "api1"
                },
                AllowOfflineAccess = true
            }
        };
    }

client site:

public void ConfigureServices(IServiceCollection services)
    {
        services.AddMvc();

        JwtSecurityTokenHandler.DefaultInboundClaimTypeMap.Clear();

        services.AddAuthentication(options =>
        {
            options.DefaultScheme = "Cookies";
            options.DefaultChallengeScheme = "oidc";
        })
            .AddCookie("Cookies")
            .AddOpenIdConnect("oidc", options =>
            {
                options.SignInScheme = "Cookies";

                options.Authority = "http://jwtssoone.shomethingshow.com";
                options.RequireHttpsMetadata = false;

                 options.ClientId = "mvc";
                 options.ClientSecret = "secret";
                 options.ResponseType = "code id_token";

                 options.SaveTokens = true;
                 options.GetClaimsFromUserInfoEndpoint = true;

                 options.Scope.Add("api1");
                 options.Scope.Add("offline_access");
            });
    }

and my own external authentication module(alipay external authentication):

public class AlipayOptions : OAuthOptions
{
    public AlipayOptions()
    {
        CallbackPath = new PathString("/signin-alipay");
        AuthorizationEndpoint = AlipayDefaults.AuthorizationEndpoint;
        TokenEndpoint = AlipayDefaults.TokenEndpoint;
        UserInformationEndpoint = AlipayDefaults.UserInformationEndpoint;

        Scope.Add("openid");
        Scope.Add("profile");

        ClaimActions.MapJsonKey("sub", "sub");
        ClaimActions.MapJsonKey("http://schemas.xmlsoap.org/ws/2005/05/identity/claims/nameidentifier", "user_id");
        ClaimActions.MapJsonKey("name", "nick_name");
        ClaimActions.MapJsonKey("given_name", "mytestname");
        ClaimActions.MapJsonKey("picture", "avatar");
        ClaimActions.MapJsonKey("family_name", "avatar");
    }

    public string AppId { get; set; }

    public string Key { get; set; }

    public string SignFlag { get; set; }
}

client site display:

sid

007c98b6f39455cee8d95e2d6c7f52fa

sub

f77938d2f2021f33343c0ab987a4dd47f6f2191cc1881f759f9e3d25088c49c2

idp

Alipay

name

鱼头鱼尾

given_name

mytestname

family_name

https://tfs.alipayobjects.com/images/partner/T1WzpfXghkXXXXXXXX

access token

eyJhbGciOiJSUzI1NiIsImtpZCI6IjdiZWQ3ZjU4NWNhODhjNTgxYTYyOTAyMjA2MTA4NmRkIiwidHlwIjoiSldUIn0.eyJuYmYiOjE1MzEyNzcyNzIsImV4cCI6MTUzMTI4MDg3MiwiaXNzIjoiaHR0cDovL2p3dHNzb29uZS5zaG9tZXRoaW5nc2hvdy5jb20iLCJhdWQiOiJodHRwOi8vand0c3Nvb25lLnNob21ldGhpbmdzaG93LmNvbS9yZXNvdXJjZXMiLCJjbGllbnRfaWQiOiJtdmMiLCJzdWIiOiJmNzc5MzhkMmYyMDIxZjMzMzQzYzBhYjk4N2E0ZGQ0N2Y2ZjIxOTFjYzE4ODFmNzU5ZjllM2QyNTA4OGM0OWMyIiwiYXV0aF90aW1lIjoxNTMxMjc3MjcwLCJpZHAiOiJBbGlwYXkiLCJzY29wZSI6WyJvcGVuaWQiLCJwcm9maWxlIiwib2ZmbGluZV9hY2Nlc3MiXSwiYW1yIjpbImV4dGVybmFsIl19.CcAt-Zu9GjcK5YAXVE5q3wm_zsPJQrl8IBXmzC0JTv4yEPn_miWZZbkSZp8QhHmW2sgu7h0TgvAkvAuj6emmWyfYrHlStXYkR5jZ63XytOGUJXVQ1LeFzlRGk93ScXJCcWIo9MjJikViSLGN27F9Y1pkHKLWf3e0mt1ZtCHCTtDZznZAo99LOnheui5uuDK8bRmnQeMZBex1hGeSrHdqUyPo0RdfIOXy9JgX0F95VOK-ox9W4PtzjtlEkGqk4vcyW9H4sp7D9oAyuIxzmsIxDK8w7MfiHYl0y5LTol3Ilp2jg_vO6jRXKDJ12LuOAvaF-8SJjBgmG2gE2FKPFJMRcQ

refresh token

2e1a9b2047d65262febce32591be6b6cadce75b0c4219b5df51d8edf65db9458

not picutre here,i set it the same as the family_name,but it not display.

in my log:

2018-07-11 10:47:52.591 +08:00 [DBG] Get profile called for subject f77938d2f2021f33343c0ab987a4dd47f6f2191cc1881f759f9e3d25088c49c2 from client MVC Client with claim types ["sub","name","family_name","given_name","middle_name","nickname","preferred_username","profile","picture","website","gender","birthdate","zoneinfo","locale","updated_at"] via UserInfoEndpoint

2018-07-11 10:47:52.599 +08:00 [DBG] Issued claims: ["name","given_name","picture","family_name"]

2018-07-11 10:47:52.599 +08:00 [INF] Profile service returned to the following claim types: name given_name picture family_name

Thanks for your help.