當前位置: 首頁>>代碼示例>>Golang>>正文


Golang goth.User類代碼示例

本文整理匯總了Golang中github.com/laicosly/goth.User的典型用法代碼示例。如果您正苦於以下問題:Golang User類的具體用法?Golang User怎麽用?Golang User使用的例子?那麽, 這裏精選的類代碼示例或許可以為您提供幫助。


在下文中一共展示了User類的15個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Golang代碼示例。

示例1: userFromReader

func userFromReader(reader io.Reader, user *goth.User) error {

	u := struct {
		ID string `json:"id"`
		//Email   string `json:"email"`
		//Bio     string `json:"bio"`
		Name string `json:"name"`
		Link string `json:"link"`
		/*Picture struct {
			Data struct {
				URL string `json:"url"`
			} `json:"data"`
		} `json:"picture"`
		Location struct {
			Name string `json:"name"`
		} `json:"location"`*/
	}{}

	err := json.NewDecoder(reader).Decode(&u)
	if err != nil {
		return err
	}

	user.Name = u.Name
	//user.NickName = u.Name
	//user.Email = u.Email
	//user.Description = u.Bio
	//user.AvatarURL = u.Picture.Data.URL
	user.UserID = u.Name //u.ID
	//user.Location = u.Location.Name

	return err
}
開發者ID:laicosly,項目名稱:goth,代碼行數:33,代碼來源:reddit.go

示例2: userFromReader

func userFromReader(r io.Reader, user *goth.User) error {
	u := struct {
		Country     string `json:"country"`
		DisplayName string `json:"display_name"`
		Email       string `json:"email"`
		ID          string `json:"id"`
		Images      []struct {
			URL string `json:"url"`
		} `json:"images"`
	}{}

	err := json.NewDecoder(r).Decode(&u)
	if err != nil {
		return err
	}

	user.Name = u.DisplayName
	user.Email = u.Email
	user.UserID = u.ID
	user.Location = u.Country
	if len(u.Images) > 0 {
		user.AvatarURL = u.Images[0].URL
	}
	return nil
}
開發者ID:laicosly,項目名稱:goth,代碼行數:25,代碼來源:spotify.go

示例3: userFromReader

func userFromReader(reader io.Reader, user *goth.User) error {

	u := struct {
		Data struct {
			UserID      string `json:"id"`
			AvatarURL   string `json:"image"`
			Description string `json:"bio"`
			FirstName   string `json:"first_name"`
			LastName    string `json:"last_name"`
			NickName    string `json:"username"`
		} `json:"data"`
	}{}

	err := json.NewDecoder(reader).Decode(&u)
	if err != nil {
		return err
	}

	user.NickName = u.Data.NickName
	user.UserID = u.Data.UserID
	user.Name = fmt.Sprintf("%s %s", u.Data.FirstName, u.Data.LastName)
	user.Description = u.Data.Description
	user.AvatarURL = u.Data.AvatarURL

	return err
}
開發者ID:laicosly,項目名稱:goth,代碼行數:26,代碼來源:pinterest.go

示例4: FetchUser

// FetchUser will go to Tumblr and access basic information about the user.
func (p *Provider) FetchUser(session goth.Session) (*goth.User, error) {

	user := goth.User{}
	sess := session.(*Session)
	response, err := p.consumer.Get(
		endpointProfile,
		map[string]string{
			"method":         "flickr.people.getInfo",
			"format":         "json",
			"nojsoncallback": "1",
			"user_id":        sess.AccessToken.AdditionalData["user_nsid"],
		},
		sess.AccessToken)
	if err != nil {
		return nil, err
	}
	defer response.Body.Close()
	bits, err := ioutil.ReadAll(response.Body)
	err = json.NewDecoder(bytes.NewReader(bits)).Decode(&user.RawData)
	if err != nil {
		return nil, err
	}

	user.AccessToken = sess.AccessToken.Token
	user.AccessTokenSecret = sess.AccessToken.Secret
	err = userFromReader(bytes.NewReader(bits), &user)
	return &user, err
}
開發者ID:laicosly,項目名稱:goth,代碼行數:29,代碼來源:flickr.go

示例5: userFromReader

func userFromReader(reader io.Reader, user *goth.User) error {

	u := struct {
		Person struct {
			Id       string `json:"nsid"`
			Location struct {
				Content string `json:"_content"`
			} `json:"location"`
			Name struct {
				Content string `json:"_content"`
			} `json:"realname"`
			Username struct {
				Content string `json:"_content"`
			} `json:"username"`
		} `json:"person"`
	}{}

	err := json.NewDecoder(reader).Decode(&u)
	if err != nil {
		return err
	}
	user.Name = u.Person.Name.Content
	user.UserID = u.Person.Id
	user.NickName = u.Person.Username.Content
	return err
}
開發者ID:laicosly,項目名稱:goth,代碼行數:26,代碼來源:flickr.go

示例6: userFromReader

func userFromReader(reader io.Reader, user *goth.User) error {

	u := struct {
		Data struct {
			ID       string `json:"id"`
			Username string `json:"username"`
			//Email    string `json:"email"`
			Name    string `json:"full_name"`
			Bio     string `json:"bio"`
			Picture string `json:"profile_picture"`
			Website string `json:"website"`
			Counts  struct {
				Media      int `json:"media"`
				Follows    int `json:"follows"`
				FollowedBy int `json:"followed_by"`
			} `json:"counts"`
		} `json:"data"`
	}{}

	err := json.NewDecoder(reader).Decode(&u)
	if err != nil {
		return err
	}

	user.Name = u.Data.Name
	user.NickName = u.Data.Username
	//user.Email = u.Data.Email
	user.Description = u.Data.Bio
	user.AvatarURL = u.Data.Picture
	user.UserID = u.Data.ID
	//user.Location =

	return err
}
開發者ID:laicosly,項目名稱:goth,代碼行數:34,代碼來源:instagram.go

示例7: FetchUser

// FetchUser will go to Twitter and access basic information about the user.
func (p *Provider) FetchUser(session goth.Session) (*goth.User, error) {

	sess := session.(*Session)
	response, err := p.consumer.Get(
		endpointProfile,
		map[string]string{"include_entities": "false", "skip_status": "true"},
		sess.AccessToken)
	if err != nil {
		return nil, err
	}
	defer response.Body.Close()

	bits, err := ioutil.ReadAll(response.Body)
	if err != nil {
		return nil, err
	}
	user := goth.User{}
	err = json.NewDecoder(bytes.NewReader(bits)).Decode(&user.RawData)
	if err != nil {
		return nil, err
	}
	user.Name = user.RawData["name"].(string)
	user.NickName = user.RawData["screen_name"].(string)
	user.Description = user.RawData["description"].(string)
	user.AvatarURL = user.RawData["profile_image_url"].(string)
	user.UserID = user.RawData["id_str"].(string)
	user.Location = user.RawData["location"].(string)
	user.AccessToken = sess.AccessToken.Token
	user.AccessTokenSecret = sess.AccessToken.Secret
	return &user, err
}
開發者ID:laicosly,項目名稱:goth,代碼行數:32,代碼來源:twitter.go

示例8: userFromReader

func userFromReader(reader io.Reader, user *goth.User) error {

	u := struct {
		ID       string `json:"user_id"`
		Username string `json:"user"`
	}{}

	err := json.NewDecoder(reader).Decode(&u)
	if err != nil {
		return err
	}

	user.NickName = u.Username
	user.UserID = u.ID

	return err
}
開發者ID:laicosly,項目名稱:goth,代碼行數:17,代碼來源:slack.go

示例9: userFromReader

func userFromReader(reader io.Reader, user *goth.User) error {
	u := struct {
		ID       int    `json:"id"`
		Email    string `json:"email"`
		Bio      string `json:"bio"`
		Name     string `json:"name"`
		Picture  string `json:"avatar_url"`
		Location string `json:"location"`
	}{}

	err := json.NewDecoder(reader).Decode(&u)
	if err != nil {
		return err
	}

	user.Name = u.Name
	user.NickName = u.Name
	user.Email = u.Email
	user.Description = u.Bio
	user.AvatarURL = u.Picture
	user.UserID = strconv.Itoa(u.ID)
	user.Location = u.Location

	return err
}
開發者ID:laicosly,項目名稱:goth,代碼行數:25,代碼來源:github.go

示例10: userFromReader

func userFromReader(reader io.Reader, user *goth.User) error {

	u := struct {
		ID         string `json:"id"`
		Email      string `json:"emailAddress"`
		FirstName  string `json:"firstName"`
		LastName   string `json:"lastName"`
		Headline   string `json:"headline"`
		PictureURL string `json:"pictureUrl"`
		Location   struct {
			Name string `json:"name"`
		} `json:"location"`
	}{}

	err := json.NewDecoder(reader).Decode(&u)
	if err != nil {
		return err
	}

	user.Name = u.FirstName + " " + u.LastName
	user.NickName = u.FirstName
	user.Email = u.Email
	user.Description = u.Headline
	user.AvatarURL = u.PictureURL
	user.UserID = u.ID
	user.Location = u.Location.Name

	return err
}
開發者ID:laicosly,項目名稱:goth,代碼行數:29,代碼來源:linkedin.go

示例11: userFromReader

func userFromReader(reader io.Reader, user *goth.User) error {

	u := struct {
		ID      int    `json:"uid"`
		Email   string `json:"email"`
		Name    string `json:"display_name"`
		Country string `json:"country"`
	}{}

	err := json.NewDecoder(reader).Decode(&u)
	if err != nil {
		return err
	}

	user.Name = u.Name
	user.Email = u.Email
	user.UserID = strconv.Itoa(u.ID)
	user.Location = u.Country

	return err
}
開發者ID:laicosly,項目名稱:goth,代碼行數:21,代碼來源:dropbox.go

示例12: userFromReader

func userFromReader(reader io.Reader, user *goth.User) error {

	u := struct {
		Response struct {
			User struct {
				//ID       string `json:"id"`
				//Username string `json:"username"`
				//Email    string `json:"email"`
				Name string `json:"name"`
			} `json:"user"`
		} `json:"response"`
	}{}

	err := json.NewDecoder(reader).Decode(&u)
	if err != nil {
		return err
	}
	user.Name = u.Response.User.Name
	user.UserID = u.Response.User.Name
	return err
}
開發者ID:laicosly,項目名稱:goth,代碼行數:21,代碼來源:tumblr.go

示例13: userFromReader

func userFromReader(reader io.Reader, user *goth.User) error {

	u := struct {
		ID          int    `json:"id"`
		Permalink   string `json:"permalink"`
		Username    string `json:"username"`
		Description string `json:"description"`
		Picture     string `json:"avatar_url"`
		Name        string `json:"full_name"`
		Country     string `json:"country"`
		City        string `json:"city"`
	}{}

	err := json.NewDecoder(reader).Decode(&u)
	if err != nil {
		return err
	}

	user.Name = u.Name
	user.NickName = u.Username
	user.Description = u.Description
	user.AvatarURL = u.Picture
	user.UserID = strconv.Itoa(u.ID)
	user.Location = u.City + " " + u.Country

	return err
}
開發者ID:laicosly,項目名稱:goth,代碼行數:27,代碼來源:soundcloud.go

示例14: userFromReader

func userFromReader(reader io.Reader, user *goth.User) error {

	u := struct {
		UserID      int    `json:"ID"`
		AvatarURL   string `json:"avatar_URL"`
		Email       string `json:"email"`
		Description string `json:"profile_URL"`
		Name        string `json:"username"`
		NickName    string `json:"display_name"`
	}{}

	err := json.NewDecoder(reader).Decode(&u)
	if err != nil {
		return err
	}

	user.NickName = u.NickName
	user.UserID = strconv.Itoa(u.UserID)
	user.Name = u.Name
	user.Description = u.Description
	user.AvatarURL = u.AvatarURL
	user.Email = u.Email

	return err
}
開發者ID:laicosly,項目名稱:goth,代碼行數:25,代碼來源:wordpress.go

示例15: FetchUser

// FetchUser will go to Tumblr and access basic information about the user.
func (p *Provider) FetchUser(session goth.Session) (*goth.User, error) {
	user := goth.User{}
	sess := session.(*Session)
	response, err := p.consumer.Get(
		endpointProfile,
		map[string]string{},
		sess.AccessToken)
	if err != nil {
		return nil, err
	}
	defer response.Body.Close()

	bits, err := ioutil.ReadAll(response.Body)
	err = json.NewDecoder(bytes.NewReader(bits)).Decode(&user.RawData)
	if err != nil {
		return nil, err
	}

	user.AccessToken = sess.AccessToken.Token
	user.AccessTokenSecret = sess.AccessToken.Secret
	err = userFromReader(bytes.NewReader(bits), &user)
	return &user, err
}
開發者ID:laicosly,項目名稱:goth,代碼行數:24,代碼來源:tumblr.go


注:本文中的github.com/laicosly/goth.User類示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。