socket.ts 1.3 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152
  1. import * as signalr from 'signalr-for-wx'
  2. import { RequestOption, ResponseOptions } from 'signalr-for-wx'
  3. console.log('in socket', signalr)
  4. const socket = new signalr.HubConnectionBuilder()
  5. .configureLogging(1)
  6. .withUrl('https://www.ado5.com', {
  7. skipNegotiation: true,
  8. transport: signalr.HttpTransportType.WebSockets,
  9. })
  10. .build()
  11. socket.onclose((err) => {
  12. err && console.log(err)
  13. wx.showModal({
  14. title: 'Socket 已断开',
  15. content: JSON.stringify(err),
  16. })
  17. })
  18. socket.start()
  19. // const request = new signalr.Request({
  20. // baseUrl: `http://www.baidu.com`,
  21. // timeout: 60 * 1000,
  22. // headers: { 'content-type': 'application/json' },
  23. // transformRequest: [
  24. // // 支持 async/await
  25. // async (options: RequestOption) => {
  26. // // options.url = `new url`
  27. // // TODO ...
  28. // },
  29. // ],
  30. // transformResponse: [
  31. // // 支持 async/await
  32. // async (response: ResponseOptions) => {
  33. // // TODO 处理 response
  34. // // 如果 return Promise.reject() 或 抛出异常,则停止后续 响应处理
  35. // },
  36. // ],
  37. // responseType: signalr.ResponseType.JSON,
  38. // method: signalr.RequestMethod.GET,
  39. // })
  40. // request.get('/').then((rsp) => {
  41. // console.log(rsp.data)
  42. // })
  43. console.log(socket, '<- socket init')
  44. export default socket