Commit a71c6c7
fix: improve handling of binary responses in GuzzleHttpClientAspect (#1041)
* fix: improve handling of binary responses in GuzzleHttpClientAspect
- Check Content-Type header to determine if response is textual before reading
- Return 'Binary Response' placeholder for non-textual content
- Avoid unnecessary stream operations on binary responses
- Maintain backward compatibility for textual responses
This prevents attempting to read or process binary content as text, which
could cause memory issues or corrupted logs when dealing with file downloads,
images, or other binary API responses.
* fix: 修复 GuzzleHttpClientAspect 中对响应有效负载的处理逻辑
* fix: 修复 GuzzleHttpClientAspect 中对流响应的处理逻辑
* fix: 修复 GuzzleHttpClientAspect 中对流响应的处理逻辑
* fix: 改进 GuzzleHttpClientAspect 中对二进制响应的处理逻辑
* fix: 简化 GuzzleHttpClientAspect 中对流响应的处理逻辑
* fix: 修复 GuzzleHttpClientAspect 中对二进制响应的处理逻辑
* fix: 修改 GuzzleHttpClientAspect 中对空字符串响应的处理逻辑
* fix: 修复 GuzzleHttpClientAspect 中对可回溯流的处理逻辑
* Add grpc to textual Content-Type detection
Updated the regex in GuzzleHttpClientAspect to include 'application/grpc' as a textual Content-Type. This ensures that gRPC responses are correctly identified as textual for further processing.
* Apply suggestions from code review
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
* Apply suggestions from code review
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
* fix: 修复 GuzzleHttpClientAspect 中对 Content-Type 头的处理逻辑
* fix: 处理 GuzzleHttpClientAspect 中的空响应情况
* fix: 优化 GuzzleHttpClientAspect 中的响应类型声明
* fix: 修复 GuzzleHttpClientAspect 中的响应处理逻辑,确保不再接受空响应
* fix: 修复 GuzzleHttpClientAspect 中的响应内容检查逻辑,确保正确处理空字符串响应
* Apply suggestion from @Copilot
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
* fix: 优化 GuzzleHttpClientAspect 中的响应内容处理,增加响应内容截断逻辑
* fix: 优化 GuzzleHttpClientAspect 中的响应内容截断逻辑,改善代码可读性
* fix: 修正 GuzzleHttpClientAspect 中的常量注释格式,改善代码一致性
* fix: 优化 GuzzleHttpClientAspect 中的响应内容处理逻辑,确保在异常情况下不影响请求流程
* fix: 更新 GuzzleHttpClientAspect 中的内容类型匹配逻辑,支持 gRPC 响应类型
* fix: 简化 GuzzleHttpClientAspect 中的响应内容类型判断逻辑
* fix: 优化 GuzzleHttpClientAspect 中的响应内容处理逻辑,支持 gRPC 和纯文本响应
---------
Co-authored-by: Deeka Wong <8337659+huangdijia@users.noreply.github.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>1 parent 96adae5 commit a71c6c7
2 files changed
Lines changed: 90 additions & 29 deletions
File tree
- src
- sentry/src/Tracing/Aspect
- telescope/src/Aspect
Lines changed: 61 additions & 17 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
19 | 19 | | |
20 | 20 | | |
21 | 21 | | |
| 22 | + | |
22 | 23 | | |
23 | 24 | | |
24 | 25 | | |
| 26 | + | |
25 | 27 | | |
26 | 28 | | |
27 | 29 | | |
| |||
31 | 33 | | |
32 | 34 | | |
33 | 35 | | |
| 36 | + | |
| 37 | + | |
34 | 38 | | |
35 | 39 | | |
36 | 40 | | |
| |||
116 | 120 | | |
117 | 121 | | |
118 | 122 | | |
119 | | - | |
120 | | - | |
121 | | - | |
122 | | - | |
123 | | - | |
124 | | - | |
125 | | - | |
126 | | - | |
127 | | - | |
128 | | - | |
129 | | - | |
130 | | - | |
131 | | - | |
132 | | - | |
133 | | - | |
134 | | - | |
135 | | - | |
| 123 | + | |
| 124 | + | |
| 125 | + | |
136 | 126 | | |
137 | 127 | | |
138 | 128 | | |
| |||
156 | 146 | | |
157 | 147 | | |
158 | 148 | | |
| 149 | + | |
| 150 | + | |
| 151 | + | |
| 152 | + | |
| 153 | + | |
| 154 | + | |
| 155 | + | |
| 156 | + | |
| 157 | + | |
| 158 | + | |
| 159 | + | |
| 160 | + | |
| 161 | + | |
| 162 | + | |
| 163 | + | |
| 164 | + | |
| 165 | + | |
| 166 | + | |
| 167 | + | |
| 168 | + | |
| 169 | + | |
| 170 | + | |
| 171 | + | |
| 172 | + | |
| 173 | + | |
| 174 | + | |
| 175 | + | |
| 176 | + | |
| 177 | + | |
| 178 | + | |
| 179 | + | |
| 180 | + | |
| 181 | + | |
| 182 | + | |
| 183 | + | |
| 184 | + | |
| 185 | + | |
| 186 | + | |
| 187 | + | |
| 188 | + | |
| 189 | + | |
| 190 | + | |
| 191 | + | |
| 192 | + | |
| 193 | + | |
| 194 | + | |
| 195 | + | |
| 196 | + | |
| 197 | + | |
| 198 | + | |
| 199 | + | |
| 200 | + | |
| 201 | + | |
| 202 | + | |
159 | 203 | | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
60 | 60 | | |
61 | 61 | | |
62 | 62 | | |
63 | | - | |
| 63 | + | |
64 | 64 | | |
65 | 65 | | |
66 | 66 | | |
| |||
75 | 75 | | |
76 | 76 | | |
77 | 77 | | |
78 | | - | |
| 78 | + | |
79 | 79 | | |
80 | 80 | | |
81 | 81 | | |
| |||
91 | 91 | | |
92 | 92 | | |
93 | 93 | | |
94 | | - | |
| 94 | + | |
95 | 95 | | |
| 96 | + | |
| 97 | + | |
| 98 | + | |
| 99 | + | |
| 100 | + | |
| 101 | + | |
| 102 | + | |
| 103 | + | |
| 104 | + | |
| 105 | + | |
| 106 | + | |
| 107 | + | |
| 108 | + | |
| 109 | + | |
| 110 | + | |
| 111 | + | |
96 | 112 | | |
| 113 | + | |
97 | 114 | | |
98 | 115 | | |
99 | 116 | | |
| |||
102 | 119 | | |
103 | 120 | | |
104 | 121 | | |
| 122 | + | |
105 | 123 | | |
106 | 124 | | |
107 | 125 | | |
| 126 | + | |
108 | 127 | | |
109 | 128 | | |
110 | 129 | | |
111 | 130 | | |
112 | | - | |
113 | | - | |
114 | | - | |
115 | | - | |
116 | | - | |
117 | | - | |
| 131 | + | |
118 | 132 | | |
| 133 | + | |
119 | 134 | | |
120 | 135 | | |
121 | 136 | | |
| 137 | + | |
| 138 | + | |
| 139 | + | |
| 140 | + | |
122 | 141 | | |
123 | 142 | | |
124 | 143 | | |
| |||
127 | 146 | | |
128 | 147 | | |
129 | 148 | | |
130 | | - | |
131 | | - | |
132 | | - | |
| 149 | + | |
133 | 150 | | |
134 | 151 | | |
135 | 152 | | |
| |||
0 commit comments