code: func (user *User) OauthInitURL() string {
  	authTempToken := user.AuthTempToken()
  	s := user.ctx.Service()
  	if authTempToken == "" {
  		user.ctx.Log().Error("authTempToken is empty")
  		return ""
  	}
  	if s.DefaultOAuth2 != nil {
  		provider := user.ctx.OAuthProvider()
  
  		return provider.OAuth2Client(user.ctx).AuthCodeURL(authTempToken, oauth2.AccessTypeOffline)
  	}
  	if s.DefaultOAuth1 != nil {
  		return fmt.Sprintf("%s/oauth1/%s/%s", Config.BaseURL, s.Name, authTempToken)
  	}
  	return ""
  }
docs: // OauthInitURL used in OAuth process as returning URL