api_windows_test.go 2.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596
  1. //go:build windows
  2. package yu_curl
  3. import (
  4. "fmt"
  5. "runtime"
  6. "runtime/debug"
  7. "testing"
  8. "time"
  9. )
  10. func Test(t *testing.T) {
  11. fmt.Println(Version())
  12. }
  13. func TestCurl(t *testing.T) {
  14. j_curl := NewRequest()
  15. defer j_curl.Close()
  16. j_curl.SetHeader("aaaaaaaaa", "dddddddddd")
  17. j_curl.Get("https://fanyi.baidu.com/mtpe/project/getDefaultId?_=1694941090604")
  18. fmt.Println(j_curl.RespStatusCode())
  19. fmt.Println(j_curl.RespLen())
  20. fmt.Println(len(j_curl.RespBody()))
  21. j_s := j_curl.RespBodyS()
  22. fmt.Println("j_s1", j_s)
  23. j_curl.SetHeader("aaaaaaaaa", "")
  24. j_curl.Get("https://fanyi.baidu.com/mtpe/v2/user/getInfo?_=1694941089645")
  25. fmt.Println(j_curl.RespStatusCode())
  26. fmt.Println(j_curl.RespLen())
  27. fmt.Println(len(j_curl.RespBody()))
  28. fmt.Println(len(j_curl.RespBodyS()))
  29. fmt.Println("j_s2", j_s)
  30. j_s = j_curl.RespBodyS()
  31. fmt.Println("j_s3", j_s)
  32. }
  33. func TestThread(t *testing.T) {
  34. debug.SetMaxThreads(30000)
  35. time.Sleep(time.Second * 5)
  36. for i := 0; i < 10000; i++ {
  37. go func() {
  38. // j_curl := NewRequest()
  39. // defer j_curl.Close()
  40. fmt.Println("get-")
  41. time.Sleep(time.Second * 5)
  42. }()
  43. }
  44. time.Sleep(time.Second * 15)
  45. runtime.GC()
  46. time.Sleep(time.Second * 1)
  47. runtime.GC()
  48. time.Sleep(time.Second * 1)
  49. runtime.GC()
  50. time.Sleep(time.Second * 1)
  51. runtime.GC()
  52. time.Sleep(time.Second * 5)
  53. }
  54. // func TestWebSocket(t *testing.T) {
  55. // j_curl := NewRequest()
  56. // defer j_curl.Close()
  57. //
  58. // j_curl.SetProxy("http://11597193:49e79ewq16we@47.242.149.180:10657")
  59. //
  60. // fmt.Println(1 << 0)
  61. //
  62. // _ws:
  63. // j_curl.OpenWs("wss://ws.okx.com:8443/ws/v5/public")
  64. //
  65. // if j_err := j_curl.RespErr(); j_err == nil {
  66. //
  67. // j_bufs := []byte(`{"op":"subscribe","args":[{"channel":"mark-price","instId":"BTC-USDT"}]}`)
  68. // j_sent := 0
  69. // fmt.Println(curl_ws_send.Call(j_curl.curl, j_bufs, len(j_bufs), &j_sent, 0, 1))
  70. //
  71. // for {
  72. // time.Sleep(time.Microsecond * 100)
  73. // j_bufss := make([]byte, 24)
  74. // j_ddddd := uintptr(0)
  75. // j_bufs = make([]byte, 1024)
  76. // fmt.Println(curl_ws_recv.Call(j_curl.curl, j_bufs, len(j_bufs), &j_sent, &j_ddddd))
  77. // fmt.Println("j_bufs", j_bufss, string(j_bufs))
  78. // if j_ddddd != 0 {
  79. // fmt.Println(*(*curl_ws_frame)(unsafe.Pointer(j_ddddd)))
  80. // }
  81. // }
  82. // time.Sleep(time.Second * 100)
  83. // } else {
  84. // fmt.Println(j_err)
  85. // goto _ws
  86. // }
  87. //
  88. // }