You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
I want to add OAuth2.0 (flow = password) authentication to the Swagger page, and add mandatory authentication to some interfaces to access. I want to set up a request to log in to the oauth route, body parameters, username and password, but when the swagger page is used, it responds with a 415 message "Did not attempt to load JSON data because the request Content-Type was not 'application/json'." The reason is that Content-Type in headers: application/x-www-form-urlencoded instead of application/json, I tried specifying Content-Type = 'application/json' in headers when configuring authentication, but it didn't work.
#python mains.py
from flask import jsonify, Flask, Response
from typing import Union
from asgiref.wsgi import WsgiToAsgi
from flask_restx import Api, Resource, fields
I want to add OAuth2.0 (flow = password) authentication to the Swagger page, and add mandatory authentication to some interfaces to access. I want to set up a request to log in to the oauth route, body parameters, username and password, but when the swagger page is used, it responds with a 415 message "Did not attempt to load JSON data because the request Content-Type was not 'application/json'." The reason is that Content-Type in headers: application/x-www-form-urlencoded instead of application/json, I tried specifying Content-Type = 'application/json' in headers when configuring authentication, but it didn't work.
#python mains.py
from flask import jsonify, Flask, Response
from typing import Union
from asgiref.wsgi import WsgiToAsgi
from flask_restx import Api, Resource, fields
app = Flask(name)
authorizations = {
"oauth2.0": {
"type": "oauth2",
"flow": "password",
"tokenUrl": "oauth",
"scopes": {"read": "获取信息权限", "write": "编辑权限"},
"paths": {
"/oauth": {
"post": {
"summary": "OAuth 2.0 认证",
"description": "Authorize 认证",
"parameters": [
{
"name": "body",
"in": "body",
"required": True,
"schema": {
"type": "object",
"properties": {
"username": {
"type": "string",
"description": "Username for authentication",
},
"password": {
"type": "string",
"description": "Password for authentication",
},
},
},
}
],
"responses": {"200": {"description": "Authorization successful"}},
}
}
},
}
}
api = Api(
app,
version="1.0",
title="Flask API",
description=f"Flask swagger",
doc="/docs",
authorizations=authorizations,
)
@api.route("/oauth")
class ExampleResource(Resource):
@api.expect(
api.model(
"obj",
{
"account": fields.String(required=True, description="账号"),
"password": fields.String(required=True, description="密码"),
},
),
validate=True,
)
def post(self):
return jsonify({"data": 111})
if name == "main":
import uvicorn
The text was updated successfully, but these errors were encountered: