@@ -101,13 +101,11 @@ _EOC_
101
101
_EOC_
102
102
} else {
103
103
$new_http_server_config .= <<_EOC_ ;
104
- sock:send('trigger dgram req')
105
- local data, err = sock:receive()
106
- if not data then
107
- sock:close()
108
- ngx.say("receive stream response error: ", err)
109
- return
110
- end
104
+ local bytes, err = sock:send('trigger dgram req')
105
+ if not bytes then
106
+ ngx.say("send stream request error: ", err)
107
+ return
108
+ end
111
109
_EOC_
112
110
}
113
111
@@ -128,6 +126,14 @@ _EOC_
128
126
|| defined $block -> dgram_response
129
127
|| defined $block -> dgram_response_like)
130
128
{
129
+ $new_http_server_config .= <<_EOC_ ;
130
+ local data, err = sock:receive()
131
+ if not data then
132
+ sock:close()
133
+ ngx.say("receive stream response error: ", err)
134
+ return
135
+ end
136
+ _EOC_
131
137
if (defined $block -> log_dgram_response) {
132
138
$new_http_server_config .= <<_EOC_ ;
133
139
print("stream response: ", data)
@@ -162,24 +168,29 @@ _EOC_
162
168
return
163
169
end
164
170
_EOC_
165
- }
166
-
167
- $new_http_server_config .= <<_EOC_ ;
168
- sock:send('trigger_dgram_req2')
169
- local data, err = sock:receive()
170
- if not data then
171
- ngx.say("receive stream response error: ", err)
172
- return
173
- end
171
+ } else {
172
+ $new_http_server_config .= <<_EOC_ ;
173
+ local bytes, err = sock:send('trigger dgram req 2')
174
+ if not bytes then
175
+ ngx.say("send stream request error: ", err)
176
+ return
177
+ end
174
178
_EOC_
179
+ }
175
180
176
181
if (defined $block -> response_body
177
182
|| defined $block -> response_body_like
178
183
|| defined $block -> dgram_response
179
184
|| defined $block -> dgram_response_like)
180
185
{
181
186
$new_http_server_config .= <<_EOC_ ;
182
- ngx.print(data)
187
+ local data, err = sock:receive()
188
+ if not data then
189
+ sock:close()
190
+ ngx.say("receive stream response error: ", err)
191
+ return
192
+ end
193
+ ngx.print(data)
183
194
_EOC_
184
195
}
185
196
}
@@ -197,24 +208,22 @@ _EOC_
197
208
if (defined $dgram_req3 ) {
198
209
my $file = gen_data_file($dgram_req3 );
199
210
$new_http_server_config .= <<_EOC_ ;
200
- local f = assert(io.open('$file ', 'r'))
201
- local data = assert(f:read("*a"))
202
- assert(f:close())
203
- local bytes, err = sock:send(data)
204
- if not bytes then
205
- ngx.say("send stream request error: ", err)
206
- return
207
- end
211
+ local f = assert(io.open('$file ', 'r'))
212
+ local data = assert(f:read("*a"))
213
+ assert(f:close())
214
+ local bytes, err = sock:send(data)
215
+ if not bytes then
216
+ ngx.say("send stream request error: ", err)
217
+ return
218
+ end
208
219
_EOC_
209
- }
210
-
211
- $new_http_server_config .= <<_EOC_ ;
212
- sock:send('trigger_dgram_req3')
213
- local data, err = sock:receive()
214
- if not data then
215
- ngx.say("receive stream response error: ", err)
216
- return
217
- end
220
+ } else {
221
+ $new_http_server_config .= <<_EOC_ ;
222
+ local bytes, err = sock:send('trigger dgram req 3')
223
+ if not bytes then
224
+ ngx.say("send stream request error: ", err)
225
+ return
226
+ end
218
227
_EOC_
219
228
220
229
if (defined $block -> response_body
@@ -223,7 +232,13 @@ _EOC_
223
232
|| defined $block -> dgram_response_like)
224
233
{
225
234
$new_http_server_config .= <<_EOC_ ;
226
- ngx.print(data)
235
+ local data, err = sock:receive()
236
+ if not data then
237
+ sock:close()
238
+ ngx.say("receive stream response error: ", err)
239
+ return
240
+ end
241
+ ngx.print(data)
227
242
_EOC_
228
243
}
229
244
}
0 commit comments