|
|
@@ -10,7 +10,9 @@ import (
|
|
|
"github.com/silenceper/wechat/oauth"
|
|
|
"github.com/silenceper/wechat/pay"
|
|
|
"github.com/silenceper/wechat/util"
|
|
|
+ "net/url"
|
|
|
"strconv"
|
|
|
+ "strings"
|
|
|
)
|
|
|
|
|
|
var wxPayCallbackHandler func(result *pay.NotifyResult)models.SysReturn = nil
|
|
|
@@ -109,10 +111,21 @@ func PayJSAPI(params *PayParams)(*JSAPIPayConfig, error){
|
|
|
}
|
|
|
|
|
|
// 获取微信OAuth认证参数
|
|
|
-func GetOAuthParams()(*WxOAuthConfig, error){
|
|
|
+func GetOAuthParams(paramMap map[string]string)(*WxOAuthConfig, error){
|
|
|
config := WxOAuthConfig{}
|
|
|
+ urlstr := wxConfig.RedirectUrl
|
|
|
+ if strings.Index(urlstr, "?") > 0{
|
|
|
+ for k, v := range paramMap{
|
|
|
+ urlstr += fmt.Sprintf("&%s=%s", k, url.QueryEscape(v))
|
|
|
+ }
|
|
|
+ }else{
|
|
|
+ urlstr += "?"
|
|
|
+ for k, v := range paramMap{
|
|
|
+ urlstr += fmt.Sprintf("%s=%s&", k, url.QueryEscape(v))
|
|
|
+ }
|
|
|
+ }
|
|
|
|
|
|
- url, err := wxoauth.GetRedirectURL(wxConfig.RedirectUrl, wxConfig.Scope, wxConfig.State)
|
|
|
+ url, err := wxoauth.GetRedirectURL(urlstr, wxConfig.Scope, wxConfig.State)
|
|
|
if err != nil{
|
|
|
return nil, err
|
|
|
}
|