龙卷风框架(FacebookGraphMixin)

2023-12-06

我想尝试使用 Tornado Framework 将应用程序请求从我的 Facebook 应用程序发送到用户。我正在关注http://www.tornadoweb.org/documentation/auth.html但我不知道如何解决这个错误。有专业人士在吗?谢谢!

错误日志

Traceback (most recent call last):
  File "send.py", line 36, in <module>
    main()
  File "send.py", line 33, in main
    test.get(app_access_token, player_id)
  File "send.py", line 15, in get
    callback=self.async_callback(self._on_post))
AttributeError: 'Send' object has no attribute 'async_callback'

Code

import tornado.auth
import tornado.escape
import tornado.httpserver
import tornado.ioloop
import tornado.options
import tornado.web
from tornado import httpclient

class Send(tornado.auth.FacebookGraphMixin):
    def get(self, app_access_token, player_id):
        self.facebook_request(
            "/"+player_id+"/apprequests",
            post_args={"message": "I am an app request from my Tornado application!"},
            access_token=app_access_token,
            callback=self.async_callback(self._on_post))

    def _on_post(self, new_entry):
        if not new_entry:
            # Call failed; perhaps missing permission?
            self.authorize_redirect()
            return
        self.finish("Posted a message!")

def main():
    key = "xxxxxxxxxxx"
    secret = "xxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
    player_id = "100003395454290" #fake id
    http_client = httpclient.HTTPClient()
    response = http_client.fetch("https://graph.facebook.com/oauth/access_token?grant_type=client_credentials&client_id="+key+"&client_secret="+secret+"&redirect_uri=&code=")
    app_access_token = response.body.replace("access_token=","")

    test = Send()
    test.get(app_access_token, player_id)

if __name__ == "__main__":
    main()

好吧,我的回答并没有直接回答OP的问题。但正如这显示在错误的顶部搜索结果中AttributeError: 'XxxxxHandler' object has no attribute 'async_callback'

值得注意的是,从 Tornado v4.0 开始async_callback功能已被删除。引用向后兼容性说明:

The RequestHandler.async_callback and WebSocketHandler.async_callback包装函数已被删除;它们已经过时了 由于堆栈上下文(以及最近的协程),时间很长。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

龙卷风框架(FacebookGraphMixin) 的相关文章

  • pip 安装最新的依赖版本

    当我使用安装包时pip install e 它仅安装不满足的依赖项并忽略依赖项升级 如何在每次运行时安装最新的依赖版本pip install e 我尝试过使用pip install upgrade e 但是使用这个选项没有任何改变 我仍然得
  • Pandas ParserError:标记数据时出错。 C 错误:字符串内有 EOF

    我的数据超过 400 000 行 运行此代码时 f pd read csv filename error bad lines False 我收到以下错误 pandas errors ParserError Error tokenizing
  • setColumnStretch 和 setRowStretch 如何工作

    我有一个使用构建的应用程序PySide2它使用setColumnStretch用于柱拉伸和setRowStretch用于行拉伸 它工作得很好 但我无法理解它是如何工作的 我参考了 qt 文档 但它对我没有帮助 我被困在括号内的两个值上 例如
  • 使用python编辑html,但是lxml将漂亮的html实体转换为奇怪的编码

    我正在尝试使用 python 带有 pyquery 和 lxml 来更改和清理一些 html Eg html div p It 146 s a spicy meatball p div lxml html clean 函数 clean ht
  • TemplateSyntaxError:“settings_tags”不是有效的标签库

    当我尝试运行此测试用例时 出现此错误 这是在我的 django 应用程序的tests py 中编写的 def test accounts register self self url http royalflag com pk accoun
  • 如何进行重定向并保留查询字符串?

    我想进行重定向并保留查询字符串 就像是self redirect加上发送的查询参数 那可能吗 newurl my new route urllib urlencode self request params self redirect ne
  • 将 numpy 数组及其大小写入二进制文件

    我需要将 2D numpy 数组写入文件 包括其尺寸 以便我可以从 C 程序中读取它并创建相应的数组 我编写了一些简单的代码来保存数组 并且可以从 C 读取它 但是如果我尝试先写入数组的大小 它总是会给我一个错误 这是我的简单 python
  • FastAPI UploadFile 与 Flask 相比慢

    我创建了一个端点 如下所示 app post report upload def create upload files files UploadFile File try with open files filename wb as wf
  • 如何用pygame画一条虚线?

    我需要在坐标系上绘制正弦波和余弦波 就像在this https i stack imgur com DGI8g png图片 除了没能代表以外 我所有的工作都做得很好虚线和曲线与 pygame 一致 我有与我需要的类似的东西 但我怎样才能让它
  • matplotlib - 将文本包装在图例中

    我目前正在尝试绘制一些pandas数据通过matplotlib seaborn 然而我的一个专栏标题特别长 拉长了情节 考虑以下示例 import random import pandas as pd import matplotlib p
  • 私有属性,但却是一个神秘的领域

    我想将属性设为私有 但带有 pydantic 字段 from pydantic import BaseModel Field PrivateAttr validator class A BaseModel a str I want a py
  • 在添加数据之前使用 Python gdata 清除工作表中的行

    我有一个 Google 电子表格 我使用 python 脚本和 gdata 库填充值 如果我多次运行脚本 它会将新行附加到工作表中 我希望脚本在填充之前首先清除行中的所有数据 这样每次运行时我都会有一组新的数据脚本 我尝试过使用 Updat
  • 使用张量流导出神经网络的权重

    我使用张量流工具编写了神经网络 一切正常 现在我想导出神经网络的最终权重以制定单一的预测方法 我怎样才能做到这一点 您需要在训练结束时使用以下命令保存模型tf train Saver https www tensorflow org ver
  • 在 Keras 中使用有状态 LSTM 训练多变量多级数回归问题

    我有时间序列P过程 每个过程的长度各不相同 但都有 5 个变量 维度 我试图预测测试过程的估计寿命 我正在用有状态的方法来解决这个问题LSTM在喀拉斯 但我不确定我的训练过程是否正确 我将每个序列分成长度的批次30 所以每个序列都是这样的形
  • 从 SUDS 中的 SOAP 响应中提取 Cookie

    我必须使用具有多种服务的 API 所有这些都需要来自下面的身份验证的 JSESSION cookie 然而 当我调用下一个服务时 它不会保留 cookie 因此会拒绝它们 from suds client import Client url
  • model.predict() 返回类而不是概率

    Hello 我是第一次使用 Keras 我训练并保存了一个模型 作为 json 文件及其权重 该模型旨在将图像分为 3 个类别 我的编译方法 model compile loss categorical crossentropy optim
  • python 中“重载”函数的最佳方法? [复制]

    这个问题在这里已经有答案了 我正在尝试在 python 中做这样的事情 def foo x y do something at position x y def foo pos foo pos x pos y 所以我想根据我提供的参数数量调
  • 奇怪的 Facebook ID [关闭]

    Closed 这个问题需要细节或清晰度 help closed questions 目前不接受答案 我有两个 Facebook 应用程序 它们都正在开发中 其中一个是很久以前创建的 而另一个则是相当新的 自从我升级到新的 iOS Faceb
  • Python 中的可逆 STFT 和 ISTFT

    有没有通用的形式短时傅立叶变换 https en wikipedia org wiki Short time Fourier transform与内置于 SciPy 或 NumPy 或其他什么中的相应逆变换 这是pyplotspecgram
  • 从 HDF5 文件中删除信息

    我意识到 SO 用户以前曾问过这个问题question https stackoverflow com questions 1124994 removing data from a hdf5 file rq 1但它是在 2009 年被问到的

随机推荐

  • Git中添加但未提交的已删除文件可以恢复吗? [复制]

    这个问题在这里已经有答案了 我是 git 的新手 我刚刚犯了一个愚蠢的错误 我通过 rm 命令删除了一些重要的文件 但是 我确实使用 git add 来添加这些文件 但没有提交 删除尚未添加 那么有什么办法可以恢复这些被删除的文件呢 任何建
  • 检查 RichTextBox 上选定的文本是否全部粗体

    如何检查 RichTextBox 上选定的文本是否全部粗体 例如 asdasdasdasd 这并不都是粗体 我都很大胆 这都是粗体 这是我编写的代码 它可以检查是否全部粗体 但速度很慢 因为它使用一一检查字符Selection Start
  • 初始化 SSL 和 libcurl 并出现“内存不足”

    我打算使用 C 程序使用 libcurl 和 openssl 执行 https 请求 我初始化了 libcurlcurl global init CURL GLOBAL ALL 如文档中所述 然后我用一个curl easy处理我初始化的内容
  • 将 std::cout 重定向到 QTextEdit

    是否可以 更重要的是如何 将输出流重定向到 QTextBox 所以如果我写std cout lt lt test 应用程序中的任何位置它都会被重定向到我定义的文本框吗 我尝试了显而易见的方法 其中 ui textEdit 是指向文本编辑框的
  • 如何限制对 PHP 文件的访问?

    我想限制对我的服务器上的 PHP 文件的访问 该 PHP 文件从 HTTP GET 请求获取数据并将其附加到文件中 简单的 但我不希望执行此 PHP 文件 除非 HTTP 请求是从我开发的智能手机应用程序中生成的 我不想单独验证每个用户的身
  • 如何禁用客户端 GRPC 服务器证书主机名验证?

    目前我正在为 gRPC 客户端设置通道身份验证 如下所示 std shared ptr
  • 在matlab中设置对象数组的对象属性值

    我创建了一个对象数组 我想在向量运算中分配一个属性值 而不使用 for 循环 不幸的是我得到一个错误 问题的简化示例 classdef clsMyClass lt handle properties dblMyProperty1 end m
  • 将四位数年份值转换为 Date 类

    我的数据集中有一个整数列 其中有四位数字的年份值 例如 c 2001 2002 2002 2002 2003 2005 我尝试将四位数年份转换为班级Date using as Date year lt as Date as characte
  • PHP 中是否有 shell_exec 和 proc_open 的替代方案?

    我好像不能用shell exec or proc open在我的共享服务器上 当我尝试使用它时收到的消息是 警告 出于安全原因 第 4 行 home georgee public html admin email php 中的 shell
  • Tkinter 文档与 PEP 8 相矛盾

    PEP 8 states 应避免通配符导入 来自 import 因为它们使命名空间中存在哪些名称变得不清楚 从而使读者和许多自动化工具感到困惑 尽管如此官方文档是矛盾的 要使用 Tkinter 您只需要一个简单的导入语句 import tk
  • 整个应用程序的通用页脚 [Android]

    好吧 我想知道这是否可以做到 我所需要的只是一个常见的页脚 如栏 其中将包含将要显示的广告 我想知道是否有任何方法可以使我的应用程序的这一部分成为通用的 我知道包含标签 但所做的只是在引用它的任何地方添加特定的布局 这样做的作用是 每次我从
  • 来自 x509 中字符缓冲区的 EVP_PKEY (PKCS7)

    我有一个 DER 证书 我正在从中检索 unsigned char 缓冲区中的公钥 如下所示 这是正确的获取方式吗 pStoredPublicKey X509 get pubkey x509 if pStoredPublicKey NULL
  • 32 位浮点数相加。

    关于浮点数 我学到的东西比我想知道的还要多 可以说我需要添加 1 10000000 00000000000000000000000 1 01111000 11111000000000000000000 2的补码形式 第一位是符号 接下来的
  • 以问号开头的 HTML 标签?

    我正在学习谷歌应用程序脚本 并且在this教程中 我看到了一些奇怪的语法 and h1 Messages h1 ul ul
  • HERE Map/MapView 不使用 MapFragment

    有没有办法获得Map or MapView没有放置一个MapFragmet里面一个Layout
  • .NET 垃圾收集在这里无法正常工作?

    我们有一个在 NET 4 0 IIS 7 ASP NET 4 GB 服务器 RAM 上运行的图像转换脚本 用于调整大图像的大小 因此需要大量内存 第一个脚本将内存使用率增加到几乎 100 几乎没有为正在运行的 SQL Server 留下任何
  • 更改 R 中图形的字体

    在我的研究中 我使用 R 生成各种图表 我发现大多数图表都带有各种大小的 Sans Serif 字体 如何将图表中的所有文本 x 标签 y 标签 标题 图例等 更改为统一字体 例如Times New Roman 12pt 粗体 您可以使用外
  • Wildfly 和 Jackson @JsonIgnore 注释

    我对 Wildfly 和 Java EE 的某些部分相当陌生 我有一个使用 RestEasy 在 Wildfly 上运行的休息服务 我的 用户 实体有一个 AccessToken 实体 理想情况下 我希望能够以 JSON 形式发送用户实体
  • 如何获取一组 mysql 总行数的百分比?

    下面我有一个查询 将从用户代理表和 IP 地址链接表中获取站点最常见的用户代理 SELECT count as num string FROM useragent ip left join useragents on useragent i
  • 龙卷风框架(FacebookGraphMixin)

    我想尝试使用 Tornado Framework 将应用程序请求从我的 Facebook 应用程序发送到用户 我正在关注http www tornadoweb org documentation auth html但我不知道如何解决这个错误