修复错误处理问题
parent
e2f6ec308c
commit
887cf39321
|
@ -137,6 +137,13 @@ const handleShowUpdateAlert = (data, resolve, reject) => {
|
||||||
resolve()
|
resolve()
|
||||||
}
|
}
|
||||||
|
|
||||||
|
const onError = (errorMessage) => {
|
||||||
|
if (isInitedApi) return
|
||||||
|
isInitedApi = true
|
||||||
|
if (errorMessage.length > 1024) errorMessage = errorMessage.substring(0, 1024) + '...'
|
||||||
|
sendMessage(USER_API_RENDERER_EVENT_NAME.init, null, false, errorMessage)
|
||||||
|
}
|
||||||
|
|
||||||
const initEnv = (userApi) => {
|
const initEnv = (userApi) => {
|
||||||
contextBridge.exposeInMainWorld('lx', {
|
contextBridge.exposeInMainWorld('lx', {
|
||||||
EVENT_NAMES,
|
EVENT_NAMES,
|
||||||
|
@ -158,15 +165,16 @@ const initEnv = (userApi) => {
|
||||||
|
|
||||||
let request = needle.request(method, url, data, options, (err, resp, body) => {
|
let request = needle.request(method, url, data, options, (err, resp, body) => {
|
||||||
// console.log(err, resp, body)
|
// console.log(err, resp, body)
|
||||||
|
try {
|
||||||
if (err) {
|
if (err) {
|
||||||
callback(err, null, null)
|
callback.call(this, err, null, null)
|
||||||
} else {
|
} else {
|
||||||
body = resp.body = resp.raw.toString()
|
body = resp.body = resp.raw.toString()
|
||||||
try {
|
try {
|
||||||
resp.body = JSON.parse(resp.body)
|
resp.body = JSON.parse(resp.body)
|
||||||
} catch (_) {}
|
} catch (_) {}
|
||||||
body = resp.body
|
body = resp.body
|
||||||
callback(err, {
|
callback.call(this, err, {
|
||||||
statusCode: resp.statusCode,
|
statusCode: resp.statusCode,
|
||||||
statusMessage: resp.statusMessage,
|
statusMessage: resp.statusMessage,
|
||||||
headers: resp.headers,
|
headers: resp.headers,
|
||||||
|
@ -175,6 +183,9 @@ const initEnv = (userApi) => {
|
||||||
body,
|
body,
|
||||||
}, body)
|
}, body)
|
||||||
}
|
}
|
||||||
|
} catch (err) {
|
||||||
|
onError(err.message)
|
||||||
|
}
|
||||||
}).request
|
}).request
|
||||||
|
|
||||||
return () => {
|
return () => {
|
||||||
|
@ -290,10 +301,7 @@ const initEnv = (userApi) => {
|
||||||
|
|
||||||
contextBridge.exposeInMainWorld('__lx_init_error_handler__', {
|
contextBridge.exposeInMainWorld('__lx_init_error_handler__', {
|
||||||
sendError(errorMessage) {
|
sendError(errorMessage) {
|
||||||
if (isInitedApi) return
|
onError(errorMessage)
|
||||||
isInitedApi = true
|
|
||||||
if (errorMessage.length > 1024) errorMessage = errorMessage.substring(0, 1024) + '...'
|
|
||||||
sendMessage(USER_API_RENDERER_EVENT_NAME.init, null, false, errorMessage)
|
|
||||||
},
|
},
|
||||||
})
|
})
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue