Flask请求返回空的多部分/formdata

2024-09-25 10:26:28 发布

您现在位置:Python中文网/ 问答频道 /正文

我试图向/user发出请求,从前端发送数据,但当我到达Flask时,它似乎不明白,它返回的是空的所有方法

.html

<form onsubmit="return newSubmit(event)">
    <input type="text" id='name' name="name" value="Thierry">
    <button type="submit">Submit</button>
</form>

.js

<script>
    const BASE_URL = 'http://localhost:59301'

    function newSubmit(e) {
        e.preventDefault();

        const name = document.getElementById('name').value

        const form = new FormData()
        form.append('name', name)

        fetch(BASE_URL + '/user', {
            method: 'POST',
            headers: new Headers({
                'Content-Type': 'multipart/form-data'
            }),
            body: JSON.stringify({ 'name': 'test2' })
        })
            .then((response) => response.json())
            .then((data) => console.log(data))
            .catch((a) => console.log('error no fetch', a))
    }

</script>

白痴

@views.route('/user', methods=['POST'])
@cross_origin(origin='*', headers=['Content-Type'])
def post_user():
    print('files: ', request.files)
    print('form: ', request.form)
    print('args: ', request.args)
    print('values: ', request.values)
    print('json: ', request.json)
    print('get_json: ', request.get_json())
    print('data: ', request.data)
    print('get_data: ', request.get_data())

他回来了

files:  ImmutableMultiDict([])
form:  ImmutableMultiDict([])
args:  ImmutableMultiDict([])
values:  CombinedMultiDict([ImmutableMultiDict([]), ImmutableMultiDict([])])
json:  None
get_json:  None
data:  b''
get_data:  b''

有人知道发生了什么事吗


Tags: nameformjsondatagetrequesttypeargs