gpt4 book ai didi

python-3.x - Twisted - 请求未返回字节

转载 作者:行者123 更新时间:2023-12-02 20:29:58 24 4
gpt4 key购买 nike

我有基本的twister应用程序,但我不断收到这样的错误:

Request did not return bytes

Request:

Resource:

<main.MainPageDispatcher object at 0x7f049fa62be0>

Value:

'hello'

在任何地方,即使在官方文档的示例中,我也看到返回了该字符串,但它对我不起作用。如果我注释掉第一个返回并发送字节而不是字符串,它就可以工作。谁能帮助我理解它是如何工作的?如果它必须以字节为单位,那么为什么官方指南返回字符串?

我的代码:

from twisted.web.server import Site
from twisted.web.static import File
from twisted.web.resource import Resource
from twisted.internet import reactor

class MainPageDispatcher(Resource):
isLeaf = True
def __init__(self):
super().__init__()

def render_GET(self, request):
request.setHeader(b"content-type", b"text/html")
return "hello"
return bytes("hello", "utf-8")

root = MainPageDispatcher()
factory = Site(root)
reactor.listenTCP(8888, factory)
reactor.run()

最佳答案

在 python3 中我使用:

def render_GET(self, request):
request.setHeader("Content-Type", "text/html; charset=utf-8")
return "<html>Hello, world!</html>".encode('utf-8')

str.encode('utf-8') 返回 Unicode 字符串的字节表示形式

关于python-3.x - Twisted - 请求未返回字节,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47381475/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com