newbody = ntob('')。join(newbody)TypeError:sequence item 1:expected string,int found

时间:2015-06-18 22:14:52

标签: python cherrypy

解决此错误的最佳方法是什么? TypeError:序列项1:期望字符串,找到int

python文件(在追溯中没有提到)是500行。

Request Headers:
  COOKIE: admin_sess=c13d2f729d47c132b223e8f19ce77ac25aa12
  ORIGIN: https://192.168.1.135:5001
  Remote-Addr: 192.168.1.161
  Content-Length: 36
  USER-AGENT: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Ubuntu Chromium/43.0.2357.81 Chrome/43.0.2357.81 Safari/537.36
  CONNECTION: keep-alive
  REFERER: https://192.168.1.135:5001/
  X-REQUESTED-WITH: XMLHttpRequest
  HOST: 192.168.1.135:5001
  ACCEPT: */*
  ACCEPT-LANGUAGE: en-US,en;q=0.8
  Content-Type: application/x-www-form-urlencoded; charset=UTF-8
  ACCEPT-ENCODING: gzip, deflate
[18/Jun/2015:18:10:15] HTTP Traceback (most recent call last):
  File "/usr/lib/python2.7/site-packages/cherrypy/_cprequest.py", line 661, in respond
    response.finalize()
  File "/usr/lib/python2.7/site-packages/cherrypy/_cprequest.py", line 927, in finalize
    content = self.collapse_body()
  File "/usr/lib/python2.7/site-packages/cherrypy/_cprequest.py", line 894, in collapse_body
    newbody = ntob('').join(newbody)
TypeError: sequence item 1: expected string, int found

2 个答案:

答案 0 :(得分:0)

http://www.google.com ==> [url]http://www.google.com[/url] NO MATCHING [url]http://www.google.com[/url] ==> [url]http://www.google.com[/url] NO MATCHING [url="http://www.google.com"]http://www.google.com[/url] ==> [url="http://www.google.com"]http://www.google.com[/url] 函数需要一系列字符串,但str.join中至少有一项是newbody。首先尝试将它们转换为字符串:

int

答案 1 :(得分:0)

通常,最好还提供一个可以重现问题的代码段。有了你的问题,很明显。你正在做类似的事情:

class App:

  @cherrypy.expose
  def index(self):
    return (0xdeadbeaf,)

  @cherrypy.expose
  def also(self):
    yield 0xdeadbeaf

CherryPy处理程序应返回(yield)strunicodebytes或其中的可迭代。您也可以返回类似文件的对象。您无法返回其他类型,例如int或带有int项目的序列。