Удалить определенные куки при выходе - PullRequest
0 голосов
/ 05 января 2011

Я использую некоторые куки для хранения состояния некоторых разделов. jQuery используется для установки файлов cookie.Мне нужно иметь правильный путь, чтобы удалить куки.Этот код работает, но я предоставил значения для путей.Функция len возвращает 0. Как я могу получить куки со значениями пути?

def mylogout(request, next_page=None, template_name=None):
    response = render_to_response(template_name,{
            }, context_instance = RequestContext(request))

    logout(request)  

    print len(response.cookies.items())   

    response.delete_cookie('section_body_1', path='/some/url/data/edit/48/')  
    response.delete_cookie('section_body_2', path='/some/url/data/edit/48/')  
    response.delete_cookie('section_body_3', path='/some/url/data/edit/48/')  

    return response

Ответы [ 2 ]

0 голосов
/ 05 января 2011

К сожалению, файлы cookie, установленные с путем, содержащим определенный подкаталог, не могут быть доступны сценариям за пределами этого подкаталога. Кроме того, как упомянул cezio, вы все равно не можете удалить куки на компьютере пользователя. Вместо этого общая практика заключается в том, чтобы установить дату истечения срока действия cookie на дату в прошлом (например, 01.01.1900).

0 голосов
/ 05 января 2011

Вы не можете. Сервер получает только имя и значение куки. Вы можете установить дополнительные параметры куки только во время создания куки. После этого пользовательский агент отвечает за управление файлами cookie.

Установка cookie без пути неявно использует текущий путь URL в качестве пути cookie.

Если это не проблема, вы можете установить постоянный общий путь (т. Е. /) для своих файлов cookie, а затем использовать его для их удаления.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...