Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
G
galaxy-iOS
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
mobile-group
galaxy-iOS
Commits
53b0740b
Commit
53b0740b
authored
May 27, 2024
by
pete谢兆麟
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
微信第三方登录客户端逻辑
parent
e9298c1b
Changes
4
Hide whitespace changes
Inline
Side-by-side
Showing
4 changed files
with
86 additions
and
2 deletions
+86
-2
AppDelegate.swift
galaxy/galaxy/AppDelegate.swift
+9
-0
YHMyDocumentsDetailViewController.swift
...Documents(我的文书)/C/YHMyDocumentsDetailViewController.swift
+1
-1
YHShareManager.swift
galaxy/galaxy/Classes/Tools/Analytics/YHShareManager.swift
+75
-1
YHNetRequest.swift
galaxy/galaxy/Classes/Tools/NetWork/YHNetRequest.swift
+1
-0
No files found.
galaxy/galaxy/AppDelegate.swift
View file @
53b0740b
...
...
@@ -75,6 +75,15 @@ class AppDelegate: UIResponder, UIApplicationDelegate, WXApiDelegate {
func
application
(
_
application
:
UIApplication
,
continue
userActivity
:
NSUserActivity
,
restorationHandler
:
@escaping
([
Any
]?)
->
Void
)
->
Bool
{
return
WXApi
.
handleOpenUniversalLink
(
userActivity
,
delegate
:
self
)
}
func
onResp
(
_
resp
:
BaseResp
)
{
if
resp
.
isKind
(
of
:
SendAuthResp
.
self
)
{
let
res
=
resp
as?
SendAuthResp
if
res
?
.
state
==
"wechat_sdk_demo_test"
{
YHShareManager
.
shared
.
getWechatAccessToken
(
code
:
res
!.
code
!
)
}
}
}
}
...
...
galaxy/galaxy/Classes/Modules/IntelligentService(服务中心)/MyDocuments(我的文书)/C/YHMyDocumentsDetailViewController.swift
View file @
53b0740b
...
...
@@ -233,7 +233,7 @@ class YHMyDocumentsDetailViewController: YHBaseViewController {
button
.
setTitleColor
(
UIColor
(
hex
:
0xffffff
),
for
:
.
normal
)
button
.
layer
.
cornerRadius
=
kCornerRadius3
button
.
clipsToBounds
=
true
button
.
alpha
=
0
button
.
alpha
=
0
button
.
addTarget
(
self
,
action
:
#selector(
submit
)
,
for
:
.
touchUpInside
)
return
button
}()
...
...
galaxy/galaxy/Classes/Tools/Analytics/YHShareManager.swift
View file @
53b0740b
...
...
@@ -7,14 +7,88 @@
//
import
UIKit
import
Alamofire
class
YHShareManager
:
NSObject
{
static
let
shared
=
YHShareManager
()
var
scene
:
WXScene
=
WXSceneSession
}
extension
YHShareManager
{
//拉起微信第三方登录
func
sendLogin
()
{
guard
WXApi
.
isWXAppInstalled
()
else
{
YHHUD
.
flash
(
message
:
"拉起微信失败"
)
return
}
let
req
=
SendAuthReq
()
req
.
scope
=
"snsapi_userinfo"
req
.
state
=
"wechat_sdk_demo_test"
WXApi
.
send
(
req
)
{
flag
in
if
!
flag
{
YHHUD
.
flash
(
message
:
"分享失败"
)
}
}
}
func
getWechatAccessToken
(
code
:
String
){
let
url
=
"https://api.weixin.qq.com/sns/oauth2/access_token?appid=wx06b21f3c7a5ba594&secret=37a83c778aacc0f7788466682ef70c4e&code=
\(
code
)
&grant_type=authorization_code"
var
requestHeader
=
HTTPHeaders
()
requestHeader
.
add
(
name
:
"Conatent-Type"
,
value
:
"application/json"
)
requestHeader
.
add
(
name
:
"Accept"
,
value
:
"application/json"
)
AF
.
sessionConfiguration
.
requestCachePolicy
=
.
reloadIgnoringCacheData
AF
.
sessionConfiguration
.
timeoutIntervalForRequest
=
20
let
encoding
=
URLEncoding
(
destination
:
.
queryString
)
let
httpRequest
=
AF
.
request
(
url
,
method
:
.
get
,
parameters
:
nil
,
encoding
:
encoding
,
headers
:
requestHeader
,
interceptor
:
nil
,
requestModifier
:
nil
)
httpRequest
.
responseString
(
completionHandler
:
{
string
in
#if DEBUG
printLog
(
"
\n
网络请求已返回 string=
\(
string
)
"
)
#endif
let
responseResult
=
string
.
result
var
statusCode
=
string
.
response
?
.
statusCode
??
0
let
errorResponseMsg
=
string
.
error
?
.
localizedDescription
??
""
let
resultValue
=
string
.
value
??
""
let
serverDict
=
resultValue
.
toDictionary
()
guard
let
access_token
=
serverDict
[
"access_token"
]
as?
String
,
let
openid
=
serverDict
[
"openid"
]
as?
String
else
{
return
}
self
.
getWechatUserInfo
(
with
:
access_token
,
openId
:
openid
)
})
}
func
getWechatUserInfo
(
with
access_token
:
String
,
openId
:
String
)
{
let
url
=
"https://api.weixin.qq.com/sns/userinfo?access_token=
\(
access_token
)
&openid=
\(
openId
)
"
var
requestHeader
=
HTTPHeaders
()
requestHeader
.
add
(
name
:
"Conatent-Type"
,
value
:
"application/json"
)
requestHeader
.
add
(
name
:
"Accept"
,
value
:
"application/json"
)
AF
.
sessionConfiguration
.
requestCachePolicy
=
.
reloadIgnoringCacheData
AF
.
sessionConfiguration
.
timeoutIntervalForRequest
=
20
let
encoding
=
URLEncoding
(
destination
:
.
queryString
)
let
httpRequest
=
AF
.
request
(
url
,
method
:
.
get
,
parameters
:
nil
,
encoding
:
encoding
,
headers
:
requestHeader
,
interceptor
:
nil
,
requestModifier
:
nil
)
httpRequest
.
responseString
(
completionHandler
:
{
string
in
#if DEBUG
printLog
(
"
\n
网络请求已返回 string=
\(
string
)
"
)
#endif
let
responseResult
=
string
.
result
var
statusCode
=
string
.
response
?
.
statusCode
??
0
let
errorResponseMsg
=
string
.
error
?
.
localizedDescription
??
""
let
resultValue
=
string
.
value
??
""
let
serverDict
=
resultValue
.
toDictionary
()
guard
let
openid
=
serverDict
[
"openid"
]
as?
String
,
let
nickname
=
serverDict
[
"nickname"
]
as?
String
else
{
return
}
// 获取到的用户信息json格式,可以拿来给服务端绑定用户信息
//`在这里绑定获取到的用户信息`
if
let
iso88591Data
=
nickname
.
data
(
using
:
.
isoLatin1
)
{
if
let
utf8String
=
String
(
data
:
iso88591Data
,
encoding
:
.
utf8
)
{
print
(
utf8String
)
// 这是转换为UTF-8后的字符串
}
}
})
}
func
sendTextContect
(
_
text
:
String
)
{
guard
WXApi
.
isWXAppInstalled
()
else
{
YHHUD
.
flash
(
message
:
"拉起微信失败"
)
...
...
galaxy/galaxy/Classes/Tools/NetWork/YHNetRequest.swift
View file @
53b0740b
...
...
@@ -181,6 +181,7 @@ class YHNetRequest: NSObject {
#if DEBUG
printLog
(
"
\n
网络请求已返回 string=
\(
string
)
"
)
#endif
self
.
completeHandle
(
string
:
string
)
})
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment