python flask request_Python flask.request方法代码示例

本文整理汇总了Python中flask.request方法的典型用法代码示例。如果您正苦于以下问题:Python flask.request方法的具体用法?Python flask.request怎么用?Python flask.request使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在模块flask的用法示例。

在下文中一共展示了flask.request方法的30个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的Python代码示例。

示例1: token_required

​点赞 6

# 需要导入模块: import flask [as 别名]

# 或者: from flask import request [as 别名]

def token_required(func):

"""

检查是否携带token,如果token未携带或无效将直接返回错误,否则将username保存到g.username中

"""

from everyclass.server.user import service as user_service

@functools.wraps(func)

def wrapped(*args, **kwargs):

token = request.headers.get("X-API-Token")

if not token:

return generate_error_response(None, STATUS_CODE_TOKEN_MISSING)

username = user_service.get_username_from_jwt(token)

if not username:

return generate_error_response(None, STATUS_CODE_INVALID_TOKEN)

g.username = username

return func(*args, **kwargs)

return wrapped

开发者ID:everyclass,项目名称:everyclass-server,代码行数:22,

示例2: auth

​点赞 6

# 需要导入模块: import flask [as 别名]

# 或者: from flask import request [as 别名]

def auth():

# Describe the access request of the client and ask user for approval

client_id = request.args.get('client_id')

redirect_url = request.args.get('redirect_url')

if None in [ client_id, redirect_url ]:

return json.dumps({

"error": "invalid_request"

}), 400

if not verify_client_info(client_id, redirect_url):

return json.dumps({

"error": "invalid_client"

})

return render_template('Implicit_grant_access.html',

client_id = client_id,

redirect_url = redirect_url)

开发者ID:michaelawyu,项目名称:auth-server-sample,代码行数:20,

示例3: auth

​点赞 6

# 需要导入模块: import flask [as 别名]

# 或者: from flask import request [as 别名]

def auth():

# Describe the access request of the client and ask user for approval

client_id = request.args.get('client_id')

redirect_url = request.args.get('redirect_url')

code_challenge = request.args.get('code_challenge')

if None in [ client_id, redirect_url, code_challenge ]:

return json.dumps({

"error": "invalid_request"

}), 400

if not verify_client_info(client_id, redirect_url):

return json.dumps({

"error": "invalid_client"

})

return render_template('AC_PKCE_grant_access.html',

client_id = client_id,

redirect_url = redirect_url,

code_challenge = code_challenge)

开发者ID:michaelawyu,项目名称:auth-server-sample,代码行数:22,

示例4: exchange_for_token

​点赞 6

# 需要导入模块: import flask [as 别名]

# 或者: from flask import request [as 别名]

def exchange_for_token():

# Issues access token

authorization_code = request.form.get('authorization_code')

client_id = request.form.get('client_id')

code_verifier = request.form.get('code_verifier')

redirect_url = request.form.get('redirect_url')

if None in [ authorization_code, client_id, code_verifier, redirect_url ]:

return json.dumps({

"error": "invalid_request"

}), 400

if not verify_authorization_code(authorization_code, client_id, redirect_url,

code_verifier):

return json.dumps({

"error": "access_denied"

}), 400

access_token = generate_access_token()

return json.dumps({

"access_token": access_token,

"token_type": "JWT",

"expires_in": JWT_LIFE_SPAN

})

开发者ID:michaelawyu,项目名称:auth-server-sample,代码行数:26,

示例5: redirect_later

​点赞 6

# 需要导入模块: import flask [as 别名]

# 或者: from flask import request [as 别名]

def redirect_later():

"""302 redirect to / after the given delay.

If delay is -1, wait until a request on redirect-later-continue is done.

"""

global _redirect_later_event

delay = float(flask.request.args.get('delay', '1'))

if delay == -1:

_redirect_later_event = threading.Event()

ok = _redirect_later_event.wait(timeout=30 * 1000)

assert ok

_redirect_later_event = None

else:

time.sleep(delay)

x = flask.redirect('/')

return x

开发者ID:qutebrowser,项目名称:qutebrowser,代码行数:18,

示例6: drip

​点赞 6

# 需要导入模块: import flask [as 别名]

# 或者: from flask import request [as 别名]

def drip():

"""Drip data over a duration."""

duration = float(flask.request.args.get('duration'))

numbytes = int(flask.request.args.get('numbytes'))

pause = duration / numbytes

def generate_bytes():

for _ in range(numbytes):

yield "*".encode('utf-8')

time.sleep(pause)

response = flask.Response(generate_bytes(), headers={

"Content-Type": "application/octet-stream",

"Content-Length": str(numbytes),

})

response.status_code = HTTPStatus.OK

return response

开发者ID:qutebrowser,项目名称:qutebrowser,代码行数:19,

示例7: test_get_scopes

​点赞 6

# 需要导入模块: import flask [as 别名]

# 或者: from flask import request [as 别名]

def test_get_scopes(flask_app):

with flask_app.test_request_context("/"):

scopes = get_scopes(flask.request)

assert scopes == set()

with flask_app.test_request_context("/?scope=email&scope=name"):

scopes = get_scopes(flask.request)

assert scopes == {Scope.NAME, Scope.EMAIL}

# a space between email and name

with flask_app.test_request_context("/?scope=email%20name"):

scopes = get_scopes(flask.request)

assert scopes == {Scope.NAME, Scope.EMAIL}

# a comma between email and name

with flask_app.test_request_context("/?scope=email,name"):

scopes = get_scopes(flask.request)

assert scopes == {Scope.NAME, Scope.EMAIL}

# non-existent scope: raise ValueError

with flask_app.test_request_context("/?scope=abcd"):

with pytest.raises(ValueError):

get_scopes(flask.request)

开发者ID:simple-login,项目名称:app,代码行数:25,

示例8: test_get_response_types

​点赞 6

# 需要导入模块: import flask [as 别名]

# 或者: from flask import request [as 别名]

def test_get_response_types(flask_app):

with flask_app.test_request_context("/"):

response_types = get_response_types(flask.request)

assert response_types == set()

with flask_app.test_request_context("/?response_type=token&response_type=id_token"):

response_types = get_response_types(flask.request)

assert response_types == {ResponseType.TOKEN, ResponseType.ID_TOKEN}

# a space as separator

with flask_app.test_request_context("/?response_type=token%20id_token"):

response_types = get_response_types(flask.request)

assert response_types == {ResponseType.TOKEN, ResponseType.ID_TOKEN}

# a comma as separator

with flask_app.test_request_context("/?response_type=id_token,token"):

response_types = get_response_types(flask.request)

assert response_types == {ResponseType.TOKEN, ResponseType.ID_TOKEN}

# non-existent response_type: raise ValueError

with flask_app.test_request_context("/?response_type=abcd"):

with pytest.raises(ValueError):

get_response_types(flask.request)

开发者ID:simple-login,项目名称:app,代码行数:25,

示例9: do_get

​点赞 6

# 需要导入模块: import flask [as 别名]

# 或者: from flask import request [as 别名]

def do_get(self):

is_valid, msg, json = self.validate_json()

if not is_valid:

logger.error('invalid json: %s' % msg)

return dict()

if json is None:

return environ.env.db.get_banned_users()

if 'users' not in json:

return dict()

logger.debug('GET request: %s' % str(json))

output = dict()

for user_id in json['users']:

output[user_id] = self.do_get_with_params(user_id)

return output

开发者ID:thenetcircle,项目名称:dino,代码行数:19,

示例10: do_post

​点赞 6

# 需要导入模块: import flask [as 别名]

# 或者: from flask import request [as 别名]

def do_post(self):

is_valid, msg, json = self.validate_json()

if not is_valid:

logger.error('invalid json: %s' % msg)

raise RuntimeError('invalid json')

if json is None:

raise RuntimeError('no json in request')

if not isinstance(json, dict):

raise RuntimeError('need a dict')

logger.debug('POST request: %s' % str(json))

if 'id' not in json:

raise RuntimeError('no id parameter in request')

user_id = json.get('id')

try:

environ.env.db.remove_global_moderator(user_id)

except Exception as e:

logger.error('could not remove global moderator with id "%s": %s' % (str(user_id), str(e)))

logger.exception(traceback.format_exc())

raise RuntimeError('could not remove global moderator with id "%s": %s' % (str(user_id), str(e)))

开发者ID:thenetcircle,项目名称:dino,代码行数:24,

示例11: do_get

​点赞 6

# 需要导入模块: import flask [as 别名]

# 或者: from flask import request [as 别名]

def do_get(self):

the_json = self.validate_json()

logger.debug('GET request: %s' % str(the_json))

room_id = the_json.get('room_id', '')

limit = the_json.get('limit', 100)

try:

messages = self.do_get_with_params(room_id, limit)

for message in messages:

message['from_user_name'] = b64e(message['from_user_name'])

message['body'] = b64e(message['body'])

message['target_name'] = b64e(message['target_name'])

message['channel_name'] = b64e(message['channel_name'])

return messages

except Exception as e:

logger.error('could not get messages: %s' % str(e))

raise e

开发者ID:thenetcircle,项目名称:dino,代码行数:20,

示例12: _do_post

​点赞 6

# 需要导入模块: import flask [as 别名]

# 或者: from flask import request [as 别名]

def _do_post(self, json_data: dict):

logger.debug('POST request: %s' % str(json_data))

room_id = json_data.get('room_id')

action = json_data.get('action')

acl_type = json_data.get('acl_type')

acl_value = json_data.get('acl_value')

try:

channel_id = self.env.db.channel_for_room(room_id)

self.acl_manager.update_room_acl(channel_id, room_id, action, acl_type, acl_value)

except Exception as e:

logger.error('could update acls in room {} with action={}, type={}, value="{}": {}'.format(

room_id, action, acl_type, acl_value, str(e))

)

logger.exception(traceback.format_exc())

self.env.capture_exception(sys.exc_info())

开发者ID:thenetcircle,项目名称:dino,代码行数:19,

示例13: _validate_params

​点赞 6

# 需要导入模块: import flask [as 别名]

# 或者: from flask import request [as 别名]

def _validate_params(self):

is_valid, msg, json_data = self.validate_json(self.request, silent=False)

if not is_valid:

raise RuntimeError('invalid json: %s' % msg)

if json_data is None:

raise RuntimeError('no json in request')

if not isinstance(json_data, dict):

raise RuntimeError('need a dict')

if 'room_id' not in json_data:

raise KeyError('missing parameter room_id for in request')

if 'action' not in json_data:

raise KeyError('missing parameter action for in request')

if 'acl_type' not in json_data:

raise KeyError('missing parameter acl_type for in request')

if 'acl_value' not in json_data:

raise KeyError('missing parameter acl_value for in request')

return json_data

开发者ID:thenetcircle,项目名称:dino,代码行数:22,

示例14: do_get

​点赞 6

# 需要导入模块: import flask [as 别名]

# 或者: from flask import request [as 别名]

def do_get(self):

is_valid, msg, json = self.validate_json(self.request, silent=True)

if not is_valid:

logger.error('invalid json: %s' % msg)

return dict()

if json is None:

return environ.env.db.get_banned_users()

if 'users' not in json:

return dict()

logger.debug('GET request: %s' % str(json))

output = dict()

for user_id in json['users']:

output[user_id] = self.do_get_with_params(user_id)

return output

开发者ID:thenetcircle,项目名称:dino,代码行数:19,

示例15: do_post

​点赞 6

# 需要导入模块: import flask [as 别名]

# 或者: from flask import request [as 别名]

def do_post(self):

the_json = self.validate_json()

logger.debug('POST request: %s' % str(the_json))

user_id = the_json.get('user_id')

from_time = the_json.get('from_time', None)

to_time = the_json.get('to_time', None)

try:

messages = self.do_post_with_params(user_id, from_time, to_time)

for message in messages:

message['from_user_name'] = b64e(message['from_user_name'])

message['body'] = b64e(message['body'])

message['target_name'] = b64e(message['target_name'])

message['channel_name'] = b64e(message['channel_name'])

return messages

except Exception as e:

logger.error('could not get messages: %s' % str(e))

raise e

开发者ID:thenetcircle,项目名称:dino,代码行数:21,

示例16: do_get

​点赞 6

# 需要导入模块: import flask [as 别名]

# 或者: from flask import request [as 别名]

def do_get(self):

the_json = self.validate_json()

logger.debug('GET request: %s' % str(the_json))

room_id = the_json.get('room_id', '')

user_id = the_json.get('user_id')

from_time = the_json.get('from_time')

to_time = the_json.get('to_time')

try:

messages = self.do_get_with_params(room_id, user_id, from_time, to_time)

for message in messages:

message['from_user_name'] = b64e(message['from_user_name'])

message['body'] = b64e(message['body'])

message['target_name'] = b64e(message['target_name'])

message['channel_name'] = b64e(message['channel_name'])

return messages

except Exception as e:

logger.error('could not get messages: %s' % str(e))

raise e

开发者ID:thenetcircle,项目名称:dino,代码行数:22,

示例17: _parse_accept

​点赞 6

# 需要导入模块: import flask [as 别名]

# 或者: from flask import request [as 别名]

def _parse_accept(request):

"""Get the accept type for a given request.

Valid accept types are "application/json", "application/jsonlines", "application/x-recordio-protobuf",

and "text/csv". If no accept type is set, use the value in SAGEMAKER_DEFAULT_INVOCATIONS_ACCEPT.

:param request: flask request

:return: parsed accept type

"""

accept, _ = cgi.parse_header(request.headers.get("accept", ""))

if not accept or accept == "*/*":

return os.getenv(sm_env_constants.SAGEMAKER_DEFAULT_INVOCATIONS_ACCEPT, "text/csv")

if accept.lower() not in SUPPORTED_ACCEPTS:

raise ValueError("Accept type {} is not supported. Please use supported accept types: {}."

.format(accept, SUPPORTED_ACCEPTS))

return accept.lower()

开发者ID:aws,项目名称:sagemaker-xgboost-container,代码行数:18,

示例18: do_export

​点赞 5

# 需要导入模块: import flask [as 别名]

# 或者: from flask import request [as 别名]

def do_export():

format = request.form.get("format", "svg").lower()

session["last_format"] = format

filename = "export.{}".format(format)

svg = dataHub.trackCompositor.render()

converter = export.getExportConverter(dataHub.args, format)

if format == "svg":

mimetype = "image/svg+xml"

data = svg

elif format == "png":

mimetype = "image/png"

data = export.convertSVG(svg, "png", converter)

elif format == "pdf":

mimetype = "application/pdf"

data = export.convertSVG(svg, "pdf", converter)

else:

raise Exception("unknown format")

response = Response(data,

mimetype=mimetype,

headers={"Content-Disposition": "attachment;filename={}".format(filename)})

return response

开发者ID:svviz,项目名称:svviz,代码行数:29,

示例19: display

​点赞 5

# 需要导入模块: import flask [as 别名]

# 或者: from flask import request [as 别名]

def display():

req = request.args.get('req', 0)

if req == "progress":

return jsonify(result="done")

if req in ["alt", "ref", "amb"]:

allele = req

results = []

for name, sample in dataHub.samples.items():

# svg = open("{}.{}.svg".format(req, name)).read()

track = sample.tracks[allele]

track.render()

svg = track.svg.asString("web")

results.append({"name":name, "svg":svg})

for annotation in dataHub.alleleTracks[allele]:

track = dataHub.alleleTracks[allele][annotation]

track.render(spacing=5)

annoSVG = track.svg.asString("web")

results.append({"name":annotation, "svg":annoSVG})

return jsonify(results=results)

if req == "counts":

return jsonify(result=dataHub.getCounts())

return jsonify(result="unknown request: {}".format(req))

开发者ID:svviz,项目名称:svviz,代码行数:31,

示例20: put

​点赞 5

# 需要导入模块: import flask [as 别名]

# 或者: from flask import request [as 别名]

def put(self, id_: str, path: str) -> Response:

"""Add new object_ optional parameter using HTTP PUT.

:param id_ - ID of Item to be updated

:param path - Path for Item type( Specified in APIDoc @id) to be updated

"""

id_ = str(id_)

auth_response = check_authentication_response()

if isinstance(auth_response, Response):

return auth_response

class_type = get_doc().collections[path]["collection"].class_.title

# Get path of the collection-class

class_path = get_doc().collections[path]["collection"].class_.path

if checkClassOp(class_path, "PUT"):

# Check if class_type supports PUT operation

object_ = json.loads(request.data.decode('utf-8'))

obj_type = getType(class_path, "PUT")

link_props, link_type_check = get_link_props(class_path, object_)

# Load new object and type

if validObject(object_) and object_["@type"] == obj_type and check_required_props(

class_path, object_) and link_type_check:

try:

# Add the object with given ID

object_id = crud.insert(object_=object_, id_=id_,

link_props=link_props, session=get_session())

headers_ = [{"Location": "{}{}/{}/{}".format(

get_hydrus_server_url(), get_api_name(), path, object_id)}]

status_description = "Object with ID {} successfully added".format(object_id)

status = HydraStatus(code=201, title="Object successfully added.",

desc=status_description)

return set_response_headers(

jsonify(status.generate()), headers=headers_, status_code=status.code)

except (ClassNotFound, InstanceExists, PropertyNotFound) as e:

error = e.get_HTTP()

return set_response_headers(jsonify(error.generate()), status_code=error.code)

else:

error = HydraError(code=400, title="Data is not valid")

return set_response_headers(jsonify(error.generate()), status_code=error.code)

else:

abort(405)

开发者ID:HTTP-APIs,项目名称:hydrus,代码行数:42,

示例21: signin

​点赞 5

# 需要导入模块: import flask [as 别名]

# 或者: from flask import request [as 别名]

def signin():

# Issues authorization code

username = request.form.get('username')

password = request.form.get('password')

client_id = request.form.get('client_id')

redirect_url = request.form.get('redirect_url')

if None in [username, password, client_id, redirect_url]:

return json.dumps({

"error": "invalid_request"

}), 400

if not verify_client_info(client_id, redirect_url):

return json.dumps({

"error": "invalid_client"

})

if not authenticate_user_credentials(username, password):

return json.dumps({

'error': 'access_denied'

}), 401

access_token = generate_access_token()

print(process_redirect_url(redirect_url, {"1":"2"}))

return redirect(process_redirect_url(redirect_url, {

'access_token': access_token,

'token_type': 'JWT',

'expires_in': JWT_LIFE_SPAN

}), code = 303)

开发者ID:michaelawyu,项目名称:auth-server-sample,代码行数:33,

示例22: signin

​点赞 5

# 需要导入模块: import flask [as 别名]

# 或者: from flask import request [as 别名]

def signin():

# Issues authorization code

username = request.form.get('username')

password = request.form.get('password')

client_id = request.form.get('client_id')

redirect_url = request.form.get('redirect_url')

code_challenge = request.form.get('code_challenge')

if None in [username, password, client_id, redirect_url, code_challenge]:

return json.dumps({

"error": "invalid_request"

}), 400

if not verify_client_info(client_id, redirect_url):

return json.dumps({

"error": "invalid_client"

})

if not authenticate_user_credentials(username, password):

return json.dumps({

'error': 'access_denied'

}), 401

authorization_code = generate_authorization_code(client_id, redirect_url,

code_challenge)

url = process_redirect_url(redirect_url, authorization_code)

return redirect(url, code = 303)

开发者ID:michaelawyu,项目名称:auth-server-sample,代码行数:31,

示例23: signin

​点赞 5

# 需要导入模块: import flask [as 别名]

# 或者: from flask import request [as 别名]

def signin():

# Issues authorization code

username = request.form.get('username')

password = request.form.get('password')

client_id = request.form.get('client_id')

redirect_url = request.form.get('redirect_url')

if None in [ username, password, client_id, redirect_url ]:

return json.dumps({

"error": "invalid_request"

}), 400

if not verify_client_info(client_id, redirect_url):

return json.dumps({

"error": "invalid_client"

})

if not authenticate_user_credentials(username, password):

return json.dumps({

'error': 'access_denied'

}), 401

authorization_code = generate_authorization_code(client_id, redirect_url)

url = process_redirect_url(redirect_url, authorization_code)

return redirect(url, code = 303)

开发者ID:michaelawyu,项目名称:auth-server-sample,代码行数:29,

示例24: exchange_for_token

​点赞 5

# 需要导入模块: import flask [as 别名]

# 或者: from flask import request [as 别名]

def exchange_for_token():

# Issues access token

authorization_code = request.form.get('authorization_code')

client_id = request.form.get('client_id')

client_secret = request.form.get('client_secret')

redirect_url = request.form.get('redirect_url')

if None in [ authorization_code, client_id, client_secret, redirect_url ]:

return json.dumps({

"error": "invalid_request"

}), 400

if not authenticate_client(client_id, client_secret):

return json.dumps({

"error": "invalid_client"

}), 400

if not verify_authorization_code(authorization_code, client_id, redirect_url):

return json.dumps({

"error": "access_denied"

}), 400

access_token = generate_access_token()

return json.dumps({

"access_token": access_token.decode(),

"token_type": "JWT",

"expires_in": JWT_LIFE_SPAN

})

开发者ID:michaelawyu,项目名称:auth-server-sample,代码行数:31,

示例25: hello

​点赞 5

# 需要导入模块: import flask [as 别名]

# 或者: from flask import request [as 别名]

def hello():

data = flask_content_type(request) # 所有的请求信息

return jsonify(data=data)

开发者ID:jtyoui,项目名称:Jtyoui,代码行数:5,

示例26: redirect_later_continue

​点赞 5

# 需要导入模块: import flask [as 别名]

# 或者: from flask import request [as 别名]

def redirect_later_continue():

"""Continue a redirect-later request."""

if _redirect_later_event is None:

return flask.Response(b'Timed out or no redirect pending.')

else:

_redirect_later_event.set()

return flask.Response(b'Continued redirect.')

开发者ID:qutebrowser,项目名称:qutebrowser,代码行数:9,

示例27: redirect_to

​点赞 5

# 需要导入模块: import flask [as 别名]

# 或者: from flask import request [as 别名]

def redirect_to():

"""302/3XX Redirects to the given URL."""

# We need to build the response manually and convert to UTF-8 to prevent

# werkzeug from "fixing" the URL. This endpoint should set the Location

# header to the exact string supplied.

response = app.make_response('')

response.status_code = HTTPStatus.FOUND

response.headers['Location'] = flask.request.args['url'].encode('utf-8')

return response

开发者ID:qutebrowser,项目名称:qutebrowser,代码行数:11,

示例28: view_cookies

​点赞 5

# 需要导入模块: import flask [as 别名]

# 或者: from flask import request [as 别名]

def view_cookies():

"""Show cookies."""

return flask.jsonify(cookies=flask.request.cookies)

开发者ID:qutebrowser,项目名称:qutebrowser,代码行数:5,

示例29: set_cookies

​点赞 5

# 需要导入模块: import flask [as 别名]

# 或者: from flask import request [as 别名]

def set_cookies():

"""Set cookie(s) as provided by the query string."""

r = app.make_response(flask.redirect(flask.url_for('view_cookies')))

for key, value in flask.request.args.items():

r.set_cookie(key=key, value=value)

return r

开发者ID:qutebrowser,项目名称:qutebrowser,代码行数:8,

示例30: view_headers

​点赞 5

# 需要导入模块: import flask [as 别名]

# 或者: from flask import request [as 别名]

def view_headers():

"""Return HTTP headers."""

return flask.jsonify(headers=dict(flask.request.headers))

开发者ID:qutebrowser,项目名称:qutebrowser,代码行数:5,

注:本文中的flask.request方法示例整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值