O navegador não está armazenando meu cookie

1

Meu desafio é enviar meu cookie junto com minha carga útil. Estou simplesmente adicionando um cookie a um programa existente e em execução. A carga (música) está chegando bem. E não estou recebendo erros no console do navegador.

Parece que posso enviar um cooke, bem como os meus dados JSON.

Quando vejo os cabeçalhos nas Ferramentas do desenvolvedor do Chrome, vejo o cookie. Mas quando eu procuro o cookie na guia Aplicativo > > Cookie, nada está lá. Então, um cabeçalho de cookie parece ser enviado, mas o cliente não o armazena.

E, no cliente .... document.cookie é nulo.

Meu código de teste está criando um único cookie chamado sessionID.

Aqui está o cabeçalho de resposta no Chrome: você pode ver meu cookie false sessionID:     Access-Control-Allow-Credentials: true

Access-Control-Allow-Origin:null

Content-Type:text/plain

Date:Wed, 23 Nov 2016 22:41:10 GMT

Server:BaseHTTP/0.6 Python/3.5.2

Set-Cookie:sessionID=4jjdd7ghhq

Aqui está a captura de tela indicando Nenhum cookie. sem cookies na aplicação

Aqui está o código do meu servidor, escrito em Python3:

def do_OPTIONS(self):
    self.send_response(200)       
    self.send_header("Access-Control-Allow-Origin", self.headers["Origin"])
    self.send_header("Access-Control-Allow-Credentials", "true")            
    self.send_header('Access-Control-Allow-Methods', 'GET, POST, PUT, DELETE, OPTIONS')
    self.send_header('Access-Control-Allow-Headers', 'Content-Type')
    self.end_headers()
    return

def do_GET(self):
    if self.path.startswith("/songs/ID"):
        self.load_cookie()
        db=MediaDB()
        ID = self.parseID(self.path)
        song = db.getSong(ID)
        self.send_response(200)
        self.send_header('Access-Control-Allow-Origin', self.headers["Origin"])
        self.send_header("Access-Control-Allow-Credentials", "true") 
        self.send_header("Content-Type", "text/plain")      
        self.cookie["sessionID"] = "4jjdd7ghhq"
        self.send_cookie()
        self.end_headers()
        json_string = json.dumps(song)
        self.wfile.write(bytes(json_string, "utf-8"))
    elif self.path.startswith("/songs"):
        self.getSongs()
        return
    else:
        self.badPath()
        return  


def load_cookie(self):
    if "Cookie" in self.headers:
        self.cookie = cookies.SimpleCookie(self.headers["Cookie"])
    else:
        self.cookie = cookies.SimpleCookie()
    return

def send_cookie(self):
    for morsel in self.cookie.values():
        self.send_header("Set-Cookie", morsel.OutputString())
    return

================

Minhas pesquisas estão em falta. Se há algo que possa me ajudar, agradeço que você aponte isso. Ah, a propósito, minha pele é bem grossa, então se eu estou fazendo algo estúpido - não há problema em apontar ... Eu tenho que aprender de alguma forma. ha!

Além disso, caso você queira saber se é porque o Chrome às vezes não define um cookie se o cliente e o host estiverem no mesmo sistema, testei em torno disso, com o servidor em um sistema remoto, e o cliente no meu host local.

Mais uma vez, agradeço sua ajuda.

    
por Iggy 27.11.2016 / 01:02

0 respostas