post 로 날릴 때 405 에러 (Method Not Allowed)
post로 날려야 커맨드가 실행을 해서 아래와 같이 파이썬으로 작성을 해서 날렸는데 405 에러가 나네요.
다른 문제에서는 됐었는데요....
import requests
url = "http://host1.dreamhack.games:12584"
res = requests.post(url, data={'cmd':'ls'})
print (res.text)
post로 날리려면 어떻게 해야 하나요?
혹시 제가 처음부터 방향성을 잘못 잡고 있는 것인지요?? @.@
다른 질문들을 읽어봐도....
어뜨케 하는 건지 도통 모르겠네요. ㅠ.ㅠ
커맨드 실행을 해야 뭐라도 할텐데... 흠..... 왕초보
#web
작성자 정보
답변
1
2dedce
워게임 고인물
#!/usr/bin/env python3
from flask import Flask, request
import os
app = Flask(__name__)
@app.route('/' , methods=['GET'])
def index():
cmd = request.args.get('cmd', '')
if not cmd:
return "?cmd=[cmd]"
if request.method == 'GET':
''
else:
os.system(cmd)
return cmd
app.run(host='0.0.0.0', port=8000)
문제 소스코드를 보면 methods=['GET']
라고 써 있는 것을 보아 POST는 안되고 GET만 될 것 같은데
일단 이럴 때를 위해서 OPTIONS 메소드로 어떤 메소드가 가능한지 질문 요청을 보내보세요.