用双引号去除cookie值

时间:2013-07-09 08:58:31

标签: php python django cookies setcookie

我目前正在使用带有django-rest-framework软件包的Python / Django进行Restful API。我试图从PHP客户端进行调用,其中必须设置cookie以进行身份​​验证。

在我的django结束时,这就是所做的:

def SetToken(request):
    """
    Set token string to cookie
    """

    if 'token' in request.GET:
        token_str = request.GET['token']
        response = HttpResponse()
        response.set_cookie("ttsessid", token_str)
        return response

因此,创建了cookie,“ttsessid”。但是,我意识到长令牌值将导致创建引用的cookie值。这些是一些示例场景:

示例1:短字符串,无引号:

token = 2xYlyVhBKRgtAY2dzFMWDwoedV569keWKJfpNZCqLdMaQe5x38Bi9j5Pept3E%2BBdSSRyfq9zgR8KYnAqG4p%2Pept3E%2BBdSSRyfq9zgR8KYnAqG4p%2

"ttsessid" value = 2xYlyVhBKRgtAY2dzFMWDwoedV569keWKJfpNZCqLdMaQe5x38Bi9j5Pept3E%2BBdSSRyfq9zgR8KYnAqG4p%2Pept3E%2BBdSSRyfq9zgR8KYnAqG4p%2

示例2:更长的字符串,双引号:

token = 2xYlyVhBKRgtAY2dzFMWDwoedV569keWKJfpNZCqLdMaQe5x38Bi9j5Pept3E%2BBdSSRyfq9zgR8KYnAqG4p%2Pept3E%2BBdSSRyfq9zgR8KYnAqG4p%2BoHOs2AvfQ2pPP7eiLaxBCkRaCC4SUZ8zvC%2F9DwbcTXSMnj5H0qJVt1XjnIPVLJ6GcWd6t9

"ttsessid" value = "2xYlyVhBKRgtAY2dzFMWDwoedV569keWKJfpNZCqLdMaQe5x38Bi9j5Pept3E%2BBdSSRyfq9zgR8KYnAqG4p%2Pept3E%2BBdSSRyfq9zgR8KYnAqG4p%2BoHOs2AvfQ2pPP7eiLaxBCkRaCC4SUZ8zvC%2F9DwbcTXSMnj5H0qJVt1XjnIPVLJ6GcWd6t9"(Notice the double quotes)

我检查了字符串。它不包含任何禁止的字符,如'='或'&',所以我不确定它有什么问题。

我希望有人能帮助我解决这个问题。谢谢!

1 个答案:

答案 0 :(得分:0)

我不完全确定你的问题是什么。你是指你的代币中的“%”代码吗?这可能是由于:http://www.w3schools.com/tags/ref_urlencode.asp#encodingresult