Foxtable(狐表)用户栏目专家坐堂 → httpclient里如何携带==特殊符号的cookie呢?抓包发现,被强行改了,但是postman又可以直接发送==符号


  共有3443人关注过本帖树形打印复制链接

主题:httpclient里如何携带==特殊符号的cookie呢?抓包发现,被强行改了,但是postman又可以直接发送==符号

帅哥哟,离线,有人找我吗?
chen37280600
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:六尾狐 帖子:1279 积分:7953 威望:0 精华:4 注册:2017/12/31 14:53:00
httpclient里如何携带==特殊符号的cookie呢?抓包发现,被强行改了,但是postman又可以直接发送==符号  发帖心情 Post By:2023/11/7 16:36:00 [显示全部帖子]

我想从某个电商平台的接口获取数据,在postman里已经调试通了,但是在狐表不行,因为发现狐表cookies无法添加特殊符号

我在postman 还有c#里,都看过能携带 ==符号

图片点击可在新窗口打开查看此主题相关图片如下:qq截图20231107163229.jpg
图片点击可在新窗口打开查看

狐表里以下代码是不行的
htc.SCookies.Add("api_uid","CmhEAmVJkWlKZgBVX//wAg==")

也不能htc.Headers.Add("cookie","api_uid=CmhEAmVJkWlKZgBVX//wAg==")

在抓包里都看到,狐表发送的==符号被强行改编码了,但是postman的就不会被处理,有什么办法吗?


图片点击可在新窗口打开查看此主题相关图片如下:1.jpg
图片点击可在新窗口打开查看


图片点击可在新窗口打开查看此主题相关图片如下:3.jpg
图片点击可在新窗口打开查看




[此贴子已经被作者于2023/11/7 16:43:26编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
chen37280600
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:六尾狐 帖子:1279 积分:7953 威望:0 精华:4 注册:2017/12/31 14:53:00
  发帖心情 Post By:2023/11/7 16:49:00 [显示全部帖子]

我试过url编码还html编码,在抓包里,都能看到,不是原来的==,对方后端不认,当做是异常,不给我返回数据

 回到顶部
帅哥哟,离线,有人找我吗?
chen37280600
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:六尾狐 帖子:1279 积分:7953 威望:0 精华:4 注册:2017/12/31 14:53:00
  发帖心情 Post By:2023/11/7 16:51:00 [显示全部帖子]

我试过在postman里生成 php、c#、python,这些语言,都能直接在cookies里写==符号

 回到顶部
帅哥哟,离线,有人找我吗?
chen37280600
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:六尾狐 帖子:1279 积分:7953 威望:0 精华:4 注册:2017/12/31 14:53:00
  发帖心情 Post By:2023/11/7 17:26:00 [显示全部帖子]

htc.Headers.Add,是不能添加名字为 cookie 的参数的

最好最直观当时是headers里加,但是狐表的不行,无奈


图片点击可在新窗口打开查看此主题相关图片如下:4.jpg
图片点击可在新窗口打开查看


 回到顶部
帅哥哟,离线,有人找我吗?
chen37280600
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:六尾狐 帖子:1279 积分:7953 威望:0 精华:4 注册:2017/12/31 14:53:00
  发帖心情 Post By:2023/11/7 17:31:00 [显示全部帖子]

请问如何用.net 的httpclient?我直接写,会是狐表自己封装的httpclietn,不知道怎么能触发用原生的,最好有个简单案例

 回到顶部
帅哥哟,离线,有人找我吗?
chen37280600
  6楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:六尾狐 帖子:1279 积分:7953 威望:0 精华:4 注册:2017/12/31 14:53:00
  发帖心情 Post By:2023/11/7 21:07:00 [显示全部帖子]


图片点击可在新窗口打开查看此主题相关图片如下:5.jpg
图片点击可在新窗口打开查看

 回到顶部
帅哥哟,离线,有人找我吗?
chen37280600
  7楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:六尾狐 帖子:1279 积分:7953 威望:0 精华:4 注册:2017/12/31 14:53:00
  发帖心情 Post By:2023/11/7 21:23:00 [显示全部帖子]

再次很遗憾,.net4只有复杂落后的HttpWebRequest ,从4.5才开始有HttpClient

 回到顶部
帅哥哟,离线,有人找我吗?
chen37280600
  8楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:六尾狐 帖子:1279 积分:7953 威望:0 精华:4 注册:2017/12/31 14:53:00
  发帖心情 Post By:2023/11/8 16:40:00 [显示全部帖子]

用回原生的HttpWebRequest解决好了,分享一下:
' 创建一个HttpWebRequest对象
Dim request As System.Net.HttpWebRequest = DirectCast(System.Net.WebRequest.Create("你的网址"), System.Net.HttpWebRequest)

' 设置请求方法为POST
request.Method = "POST"

' 添加自定义头部信息
request.Headers.Add("cookie", "xxx")
request.Headers.Add("mallid", "xxx")

' 构建要发送的数据
Dim jo As New JObject
jo("pageNo") = 1
jo("pageSize") = 900
jo("urgencyType") = 0
jo("isCustomGoods") = False
Dim postData As String = jo.ToString ' 根据你的需要构建 POST 数据

' 将数据转换为字节数组
Dim byteArray As Byte() = System.Text.Encoding.UTF8.GetBytes(postData)

' 设置请求的Content-Type和Content-Length头部信息
request.C
request.ContentLength = byteArray.Length

' 获取请求流并将数据写入请求
Dim dataStream As System.IO.Stream = request.GetRequestStream()
dataStream.Write(byteArray, 0, byteArray.Length)
dataStream.Close()

' 发送请求并获取响应
Dim response As System.Net.HttpWebResponse = Nothing
Try
    response = DirectCast(request.GetResponse(), System.Net.HttpWebResponse)
    ' 检查响应状态码是否为 200
    If response.StatusCode = 200 Then
        ' 读取响应数据
        Dim responseStream As System.IO.Stream = response.GetResponseStream()
        Dim reader As New System.IO.StreamReader(responseStream)
        Dim responseText As String = reader.ReadToEnd()
        
        ' 打印响应数据
        Output.show("响应数据: " & responseText)
    End If
Catch ex As System.Net.WebException
    ' 捕获 WebException,可以在此处理其他异常或显示错误消息框
    MessageBox.Show("发生异常:" & ex.Message, "错误", MessageBoxButtons.OK, MessageBoxIcon.Error)
Finally
    If response IsNot Nothing Then
        response.Close()
    End If
End Try

 回到顶部