小编Mik*_*vin的帖子

Python - Google OAuth2 - 令牌中的段数错误

我正在尝试将我的 Android Flutter 项目连接到我的 Flask API 服务器,并且客户端应用程序按预期工作。问题是,即使将 OAuth2 访问令牌硬编码到服务器中也会给出以下错误消息。我很困惑为什么它甚至会发生。关于 Python 后端 OAuth2 处理的官方 Google 文档在这里

错误信息: Wrong number of segments in token: b'ya29.GluNBQsv_8FW2-jjI0w.....

代码:

import flask
from flask import jsonify, request, redirect, url_for
from google.oauth2 import id_token
from google.auth.transport import requests

#### SKIPPED INIT AND OTHER CODE ####

@app.route('/', methods=['POST'])
def index():
    token = "ya29.GluNBQsv_8FW2....." # 129 chars in total

    try:
        idinfo = id_token.verify_oauth2_token(token, requests.Request(), None)
        print(idinfo['email'])
    except Exception as ex:
        print(ex)
        data = {
            'status': 403,
            'message': …
Run Code Online (Sandbox Code Playgroud)

python google-authentication flask google-oauth google-api-python-client

5
推荐指数
1
解决办法
2744
查看次数

插入排序到位LISP

我仍然是正确的Lisp的新手,我正在尝试构建一个简单但至少有效的插入排序 - 我想切换元素到位,但仍然有能力随后附加到我的容器.我采用了旧的C++实现:

template<typename Iter>
void insertionSort(Iter begin, Iter end){
    for (auto i = begin; i != end; ++i){
        for (auto j = i; j != begin && *(std::prev(j)) > *(j); j--){
            std::iter_swap(j, std::prev(j));
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

并创建了以下代码(考虑到arefrotatef具有相当的复杂性),但它似乎没有对输入产生任何影响(UPD:现在它只是不正确地工作),我的解决方案可能出错了什么?我正在返回测试目的,我应该创建一个宏来避免传值吗?

(defparameter testa (make-array 4 :initial-contents '(2 3 1 5)))
(defun insertion-sort (vect)
    (loop for i from 0 to (1- (length vect)) do
        (loop for j from i downto 0
            until (or (= (1- j) -1) (> (aref vect …
Run Code Online (Sandbox Code Playgroud)

lisp sorting algorithm common-lisp insertion-sort

2
推荐指数
1
解决办法
152
查看次数

Flask-SQLAlchemy:sqlite3 完整性错误

我正在创建一个应用程序来替换浏览器中当前的选项卡管理器。我在组 - 表主题和选项卡 - 表选项卡之间创建了一个简单的一对多关系。我希望在删除主题时能够自动删除它的子主题。这就是我目前所拥有的:

from flask import request, redirect, url_for, render_template, Flask
from flask_sqlalchemy import SQLAlchemy
from sqlalchemy import exc
from flask_whooshee import Whooshee
from datetime import datetime

app = Flask(__name__)
app.config['SQLALCHEMY_DATABASE_URI'] = 'sqlite:///database.db'
app.config['SQLALCHEMY_TRACK_MODIFICATIONS'] = False

db = SQLAlchemy(app)
whooshee = Whooshee(app)

@whooshee.register_model('topic_name')
class Topic(db.Model):
    __tablename__ = 'topic'
    id = db.Column(db.Integer, primary_key=True, autoincrement=True)
    topic_name = db.Column(db.String, unique=True, nullable=False)
    topic_created = db.Column(db.DateTime, default=datetime.utcnow)
    topic_changed = db.Column(db.DateTime, default=datetime.utcnow)
    topic_tabs = db.relationship('Tab', backref='topic', cascade='all, delete-orphan', lazy='dynamic')

@whooshee.register_model('tab_name', 'tab_link', 'tab_description')
class Tab(db.Model): …
Run Code Online (Sandbox Code Playgroud)

python sqlite sqlalchemy flask flask-sqlalchemy

0
推荐指数
1
解决办法
2613
查看次数