1

我需要使用 CherryPy 和 Python 版本 2.7.3 处理 Url 的命令

我想更改网址。

旧网址是

localhost:8080

并在 URL 中自动添加foo=1&foo=2变量 s )

localhost:8080?=foo=1&foo=2


import cherrypy
import urllib

class Root(object):
    @cherrypy.expose
    def index(self):
        jsondict = [('foo', '1'), ('foo', '2')]
        s = urllib.urlencode(jsondict)
        print s
        #foo=1&foo=2

        return "Hello"


cherrypy.config.update({
    'global': {
        'server.socketPort': 8080
    }
})
cherrypy.quickstart(Root())

有解决办法吗?

使用建议的 Andrew raise cherrypy.HTTPRedirect("localhost:8080?" + params).

这是有效的,但这是用于重定向。

我对此不感兴趣,但使用重定向写在新的 url 上。

我不想要重定向,但我总是在这个 url 上工作,添加没有重定向的查询字符串。

有可能的?

4

1 回答 1

1

只是一个简单的重定向呢?

import cherrypy

class Root(object):
    @cherrypy.expose
    def index(self):
        urlVar = 1
        urlVar2 = 2
        raise cherrypy.HTTPRedirect("localhost:8080?foo=" + str(urlVar) + "&fooo=" + str(urlVar2))

cherrypy.config.update({
    'global': {
        'server.socketPort': 8080
    }
})
cherrypy.quickstart(Root())
于 2013-03-21T11:59:15.770 回答