質問編集履歴

9

追記

2021/07/02 07:45

投稿

sequelanonymous
sequelanonymous

スコア123

test CHANGED
File without changes
test CHANGED
@@ -172,6 +172,70 @@
172
172
 
173
173
 
174
174
 
175
+ set_appの定義の箇所
176
+
177
+ ```python
178
+
179
+ class WSGIServer(HTTPServer):
180
+
181
+
182
+
183
+ """BaseHTTPServer that implements the Python WSGI protocol"""
184
+
185
+
186
+
187
+ application = None
188
+
189
+
190
+
191
+ def server_bind(self):
192
+
193
+ """Override server_bind to store the server name."""
194
+
195
+ HTTPServer.server_bind(self)
196
+
197
+ self.setup_environ()
198
+
199
+
200
+
201
+ def setup_environ(self):
202
+
203
+ # Set up base environment
204
+
205
+ env = self.base_environ = {}
206
+
207
+ env['SERVER_NAME'] = self.server_name
208
+
209
+ env['GATEWAY_INTERFACE'] = 'CGI/1.1'
210
+
211
+ env['SERVER_PORT'] = str(self.server_port)
212
+
213
+ env['REMOTE_HOST']=''
214
+
215
+ env['CONTENT_LENGTH']=''
216
+
217
+ env['SCRIPT_NAME'] = ''
218
+
219
+
220
+
221
+ def get_app(self):
222
+
223
+ return self.application
224
+
225
+
226
+
227
+ def set_app(self,application):
228
+
229
+ self.application = application
230
+
231
+ ```
232
+
233
+
234
+
235
+
236
+
237
+
238
+
175
239
  uwsgiの場合は、setup_pypy.pyに定義があり、同じ読み込み方をしているのかどうかは気になります。
176
240
 
177
241
  [該当コード](https://github.com/unbit/uwsgi/blob/d58a832c81c2c96ae0f6e72614e1cc47f4b5d332/plugins/pypy/pypy_setup.py#L470)

8

修正

2021/07/02 07:45

投稿

sequelanonymous
sequelanonymous

スコア123

test CHANGED
File without changes
test CHANGED
@@ -1,4 +1,6 @@
1
- 下記のようにデバックしていて、気になりました。environ, start_responseは、どの記述箇所で引数がセットされているのか?start_responseの定義がある箇所はわかっています。
1
+ 下記のようにデバックしていて、気になりました。引数のenviron, start_responseは、どのモジュールのどこの記述箇所でセットされているのか
2
+
3
+ start_responseの定義がある箇所はわかっています。
2
4
 
3
5
 
4
6
 

7

修正

2021/07/02 07:41

投稿

sequelanonymous
sequelanonymous

スコア123

test CHANGED
@@ -1 +1 @@
1
- 引数のenviron, start_responseは、どの記述箇所でセットされているのか
1
+ 引数のenviron, start_responseは、どのモジュールのどこの記述箇所でセットされているのか
test CHANGED
File without changes

6

修正

2021/07/02 07:40

投稿

sequelanonymous
sequelanonymous

スコア123

test CHANGED
@@ -1 +1 @@
1
- environ, start_responseは、どの記述箇所で引数がセットされているのか
1
+ 引数のenviron, start_responseは、どの記述箇所でセットされているのか
test CHANGED
File without changes

5

修正

2021/07/02 07:39

投稿

sequelanonymous
sequelanonymous

スコア123

test CHANGED
@@ -1 +1 @@
1
- environstart_responseは、どうやって呼ばれているのか
1
+ environ, start_responseは、どの記述箇所で引数がセットされているのか
test CHANGED
@@ -1,6 +1,4 @@
1
- 下記のようにデバックしていて、気になりました。environstart_responseがどうやって呼ばれているのか?
1
+ 下記のようにデバックしていて、気になりました。environ, start_responseは、どの記述箇所で引数セットされているのか?start_responseの定義がある箇所はわかっています。
2
-
3
- start_responseの定義がある箇所はわかっています。
4
2
 
5
3
 
6
4
 

4

追記

2021/07/02 07:37

投稿

sequelanonymous
sequelanonymous

スコア123

test CHANGED
File without changes
test CHANGED
@@ -86,6 +86,8 @@
86
86
 
87
87
 
88
88
 
89
+ start_responseの定義
90
+
89
91
  ```python
90
92
 
91
93
  def start_response(self, status, headers,exc_info=None):
@@ -148,6 +150,28 @@
148
150
 
149
151
 
150
152
 
153
+ make_serverの定義
154
+
155
+ ```python
156
+
157
+ def make_server(
158
+
159
+ host, port, app, server_class=WSGIServer, handler_class=WSGIRequestHandler
160
+
161
+ ):
162
+
163
+ """Create a new WSGI server listening on `host` and `port` for `app`"""
164
+
165
+ server = server_class((host, port), handler_class)
166
+
167
+ server.set_app(app)
168
+
169
+ return server
170
+
171
+ ```
172
+
173
+
174
+
151
175
  uwsgiの場合は、setup_pypy.pyに定義があり、同じ読み込み方をしているのかどうかは気になります。
152
176
 
153
177
  [該当コード](https://github.com/unbit/uwsgi/blob/d58a832c81c2c96ae0f6e72614e1cc47f4b5d332/plugins/pypy/pypy_setup.py#L470)

3

修正

2021/07/02 07:27

投稿

sequelanonymous
sequelanonymous

スコア123

test CHANGED
File without changes
test CHANGED
@@ -1,4 +1,4 @@
1
- 下記のようにデバックしてenvironとstart_responseどうやって呼ばれているのか?
1
+ 下記のようにデバックしていて、気になりました。environとstart_responseどうやって呼ばれているのか?
2
2
 
3
3
  start_responseの定義がある箇所はわかっています。
4
4
 

2

修正

2021/07/02 07:18

投稿

sequelanonymous
sequelanonymous

スコア123

test CHANGED
File without changes
test CHANGED
@@ -1,4 +1,4 @@
1
- 下記のようにデバックしてenvironとstart_responseをどうやって呼ばれているのか?とりわけ、start_response関数は、なぜ、明示的にimport文をかいていないのに引数に指定して利用することができるのでしょうか?
1
+ 下記のようにデバックしてenvironとstart_responseをどうやって呼ばれているのか?
2
2
 
3
3
  start_responseの定義がある箇所はわかっています。
4
4
 

1

修正

2021/07/02 07:18

投稿

sequelanonymous
sequelanonymous

スコア123

test CHANGED
File without changes
test CHANGED
@@ -156,4 +156,4 @@
156
156
 
157
157
 
158
158
 
159
- 関連する質問はこちら
159
+ 関連する質問は[こちら](https://teratail.com/questions/346766)