Atualizei o Discourse ontem e estou recebendo todos os callbacks da API com erro. Descobri que o problema está nos cabeçalhos de autenticação (1), mas ao tentar algumas chamadas, recebo este erro:
Acesso ao XMLHttpRequest em 'https://mydomain.com/notifications.json?username=admin' a partir da origem 'https://mydomain.com' foi bloqueado pela política CORS: o campo de cabeçalho de solicitação api-username não é permitido pelos Access-Control-Allow-Headers na resposta de pré-voo.
Estou usando Vue e adicionei a api-key e o api-username aos cabeçalhos assim:
Você está colocando sua chave de API do system no código do lado do cliente?
Isso significa que qualquer pessoa pode pegá-la no seu código JavaScript e usá-la para assumir completamente o controle do seu fórum.
Qualquer solicitação HTTP Ajax para o Discourse deve aproveitar uma sessão existente ou não precisar de uma sessão de forma alguma.
No meu caso, tenho SSO com um aplicativo frontend em JavaScript. Seria possível consumir a API sem usar a interface de autorização para cada usuário? Gostaria de uma maneira de usar o api-username… isso é possível?