
* 겪고 있는 문제 상황을 최대한 자세하게 작성해주세요.
* 문제 해결을 위해 어떤 시도를 해보았는지 구체적으로 함께 알려주세요.
뼈대 준비하기 하고 http://localhost:5000/ 까지는 따라가는데, MongoDB의 refresh후에 연결되지 않습니다.

app.py
from flask import Flask, render_template, request, jsonify
app = Flask(__name__)
from pymongo import MongoClient
client = MongoClient('mongodb+srv://sparta:test@clustersparta.yfydbhq.mongodb.net/?retryWrites=true&w=majority')
db = client.dbsparta
@app.route('/')
def home():
return render_template('index.html')
@app.route("/bucket", methods=["POST"])
def bucket_post():
bucket_receive = request.form['bucket_give']
doc = {
'bucket':bucket_receive
}
db.bucket.insert_one(doc)
return jsonify({'msg': '저장 완료!'})
@app.route("/bucket", methods=["GET"])
def bucket_get():
return jsonify({'msg': 'GET 연결 완료!'})
if __name__ == '__main__':
app.run('0.0.0.0', port=5000, debug=True)
터미널
SAMSUNG@LAPTOP-MTDNJ71J MINGW64 ~/OneDrive/바탕 화면/sparta/projects/04.bucket
$ source "c:/Users/SAMSUNG/OneDrive/바탕 화면/sparta/projects/04.bucket/venv/Scripts/activate"
(venv)
SAMSUNG@LAPTOP-MTDNJ71J MINGW64 ~/OneDrive/바탕 화면/sparta/projects/04.bucket
$ "c:/Users/SAMSUNG/OneDrive/바탕 화면/sparta/projects/04.bucket/venv/Scripts/python.exe" "c:/Users/SAMSUNG/OneDrive/바탕 화면/sparta/projects/04.bucket/app.py"
* Serving Flask app 'app'
* Debug mode: on
WARNING: This is a development server. Do not use it in a production deployment. Use a production WSGI server instead.
* Running on all addresses (0.0.0.0)
* Running on http://127.0.0.1:5000
* Running on http://192.168.35.15:5000
Press CTRL+C to quit
* Restarting with stat
* Debugger is active!
* Debugger PIN: 439-441-521
127.0.0.1 - - [14/Mar/2023 17:51:04] "GET / HTTP/1.1" 200 -
127.0.0.1 - - [14/Mar/2023 17:51:04] "GET /bucket HTTP/1.1" 200 -
샘플데이터
127.0.0.1 - - [14/Mar/2023 17:51:28] "POST /bucket HTTP/1.1" 200 -
127.0.0.1 - - [14/Mar/2023 17:51:30] "GET / HTTP/1.1" 200 -
127.0.0.1 - - [14/Mar/2023 17:51:31] "GET /bucket HTTP/1.1" 200 -
* Detected change in 'c:\\Users\\SAMSUNG\\OneDrive\\바탕 화면\\sparta\\projects\\04.bucket\\app.py', reloading
* Restarting with stat
* Debugger is active!
* Debugger PIN: 439-441-521
* Detected change in 'c:\\Users\\SAMSUNG\\OneDrive\\바탕 화면\\sparta\\projects\\04.bucket\\app.py', reloading
Exception in thread Thread-1:
Traceback (most recent call last):
File "C:\Users\SAMSUNG\AppData\Local\Programs\Python\Python38\lib\threading.py", line 932, in _bootstrap_inner
self.run()
File "C:\Users\SAMSUNG\AppData\Local\Programs\Python\Python38\lib\threading.py", line 870, in run
self._target(*self._args, **self._kwargs)
File "C:\Users\SAMSUNG\OneDrive\바탕 화면\sparta\projects\04.bucket\venv\lib\site-packages\werkzeug\serving.py", line 766, in serve_forever
super().serve_forever(poll_interval=poll_interval)
File "C:\Users\SAMSUNG\AppData\Local\Programs\Python\Python38\lib\socketserver.py", line 232, in serve_forever
ready = selector.select(poll_interval)
File "C:\Users\SAMSUNG\AppData\Local\Programs\Python\Python38\lib\selectors.py", line 323, in select
r, w, _ = self._select(self._readers, self._writers, [], timeout)
File "C:\Users\SAMSUNG\AppData\Local\Programs\Python\Python38\lib\selectors.py", line 314, in _select
r, w, x = select.select(r, w, w, timeout)
OSError: [WinError 10038] 소켓 이외의 개체에 작업을 시도했습니다
* Restarting with stat
* Debugger is active!
* Debugger PIN: 439-441-521
127.0.0.1 - - [14/Mar/2023 18:03:54] "GET / HTTP/1.1" 200 -
127.0.0.1 - - [14/Mar/2023 18:03:54] "GET /bucket HTTP/1.1" 200 -
127.0.0.1 - - [14/Mar/2023 18:04:34] "POST /bucket HTTP/1.1" 500 -
Traceback (most recent call last):
File "C:\Users\SAMSUNG\OneDrive\바탕 화면\sparta\projects\04.bucket\venv\lib\site-packages\flask\app.py", line 2551, in __call__
return self.wsgi_app(environ, start_response)
File "C:\Users\SAMSUNG\OneDrive\바탕 화면\sparta\projects\04.bucket\venv\lib\site-packages\flask\app.py", line 2531, in wsgi_app
response = self.handle_exception(e)
File "C:\Users\SAMSUNG\OneDrive\바탕 화면\sparta\projects\04.bucket\venv\lib\site-packages\flask\app.py", line 2528, in wsgi_app
response = self.full_dispatch_request()
File "C:\Users\SAMSUNG\OneDrive\바탕 화면\sparta\projects\04.bucket\venv\lib\site-packages\flask\app.py", line 1825, in full_dispatch_request
rv = self.handle_user_exception(e)
File "C:\Users\SAMSUNG\OneDrive\바탕 화면\sparta\projects\04.bucket\venv\lib\site-packages\flask\app.py", line 1823, in full_dispatch_request
rv = self.dispatch_request()
File "C:\Users\SAMSUNG\OneDrive\바탕 화면\sparta\projects\04.bucket\venv\lib\site-packages\flask\app.py", line 1799, in dispatch_request
return self.ensure_sync(self.view_functions[rule.endpoint])(**view_args)
File "c:\Users\SAMSUNG\OneDrive\바탕 화면\sparta\projects\04.bucket\app.py", line 14, in bucket_post
bucket_receive = request.form['bucket_give']
File "C:\Users\SAMSUNG\OneDrive\바탕 화면\sparta\projects\04.bucket\venv\lib\site-packages\werkzeug\datastructures.py", line 375, in __getitem__
raise exceptions.BadRequestKeyError(key)
werkzeug.exceptions.BadRequestKeyError: 400 Bad Request: The browser (or proxy) sent a request that this server could not understand.
KeyError: 'bucket_give'
127.0.0.1 - - [14/Mar/2023 18:17:29] "POST /bucket HTTP/1.1" 500 -
Traceback (most recent call last):
File "C:\Users\SAMSUNG\OneDrive\바탕 화면\sparta\projects\04.bucket\venv\lib\site-packages\flask\app.py", line 2551, in __call__
return self.wsgi_app(environ, start_response)
File "C:\Users\SAMSUNG\OneDrive\바탕 화면\sparta\projects\04.bucket\venv\lib\site-packages\flask\app.py", line 2531, in wsgi_app
response = self.handle_exception(e)
File "C:\Users\SAMSUNG\OneDrive\바탕 화면\sparta\projects\04.bucket\venv\lib\site-packages\flask\app.py", line 2528, in wsgi_app
response = self.full_dispatch_request()
File "C:\Users\SAMSUNG\OneDrive\바탕 화면\sparta\projects\04.bucket\venv\lib\site-packages\flask\app.py", line 1825, in full_dispatch_request
rv = self.handle_user_exception(e)
File "C:\Users\SAMSUNG\OneDrive\바탕 화면\sparta\projects\04.bucket\venv\lib\site-packages\flask\app.py", line 1823, in full_dispatch_request
rv = self.dispatch_request()
File "C:\Users\SAMSUNG\OneDrive\바탕 화면\sparta\projects\04.bucket\venv\lib\site-packages\flask\app.py", line 1799, in dispatch_request
return self.ensure_sync(self.view_functions[rule.endpoint])(**view_args)
File "c:\Users\SAMSUNG\OneDrive\바탕 화면\sparta\projects\04.bucket\app.py", line 14, in bucket_post
bucket_receive = request.form['bucket_give']
File "C:\Users\SAMSUNG\OneDrive\바탕 화면\sparta\projects\04.bucket\venv\lib\site-packages\werkzeug\datastructures.py", line 375, in __getitem__
raise exceptions.BadRequestKeyError(key)
werkzeug.exceptions.BadRequestKeyError: 400 Bad Request: The browser (or proxy) sent a request that this server could not understand.
KeyError: 'bucket_give'
127.0.0.1 - - [14/Mar/2023 18:17:35] "POST /bucket HTTP/1.1" 500 -
Traceback (most recent call last):
File "C:\Users\SAMSUNG\OneDrive\바탕 화면\sparta\projects\04.bucket\venv\lib\site-packages\flask\app.py", line 2551, in __call__
return self.wsgi_app(environ, start_response)
File "C:\Users\SAMSUNG\OneDrive\바탕 화면\sparta\projects\04.bucket\venv\lib\site-packages\flask\app.py", line 2531, in wsgi_app
response = self.handle_exception(e)
File "C:\Users\SAMSUNG\OneDrive\바탕 화면\sparta\projects\04.bucket\venv\lib\site-packages\flask\app.py", line 2528, in wsgi_app
response = self.full_dispatch_request()
File "C:\Users\SAMSUNG\OneDrive\바탕 화면\sparta\projects\04.bucket\venv\lib\site-packages\flask\app.py", line 1825, in full_dispatch_request
rv = self.handle_user_exception(e)
File "C:\Users\SAMSUNG\OneDrive\바탕 화면\sparta\projects\04.bucket\venv\lib\site-packages\flask\app.py", line 1823, in full_dispatch_request
rv = self.dispatch_request()
File "C:\Users\SAMSUNG\OneDrive\바탕 화면\sparta\projects\04.bucket\venv\lib\site-packages\flask\app.py", line 1799, in dispatch_request
return self.ensure_sync(self.view_functions[rule.endpoint])(**view_args)
File "c:\Users\SAMSUNG\OneDrive\바탕 화면\sparta\projects\04.bucket\app.py", line 14, in bucket_post
bucket_receive = request.form['bucket_give']
File "C:\Users\SAMSUNG\OneDrive\바탕 화면\sparta\projects\04.bucket\venv\lib\site-packages\werkzeug\datastructures.py", line 375, in __getitem__
raise exceptions.BadRequestKeyError(key)
werkzeug.exceptions.BadRequestKeyError: 400 Bad Request: The browser (or proxy) sent a request that this server could not understand.
KeyError: 'bucket_give'
127.0.0.1 - - [14/Mar/2023 18:19:58] "GET / HTTP/1.1" 200 -
