Revert "DEV: prevents csrf token to leak state between tests (#7746)"

This reverts commit b29d63a52d.
This commit is contained in:
Joffrey JAFFEUX 2019-06-11 12:19:49 +02:00
parent b29d63a52d
commit ebf77f74b7
2 changed files with 4 additions and 17 deletions

View File

@ -1,27 +1,16 @@
// Append our CSRF token to AJAX requests when necessary. // Append our CSRF token to AJAX requests when necessary.
let _crsfCallbacks;
export default { export default {
name: "csrf-token", name: "csrf-token",
initialize: function(container) {
initialize(container) { var session = container.lookup("session:main");
const session = container.lookup("session:main");
_crsfCallbacks = $.Callbacks();
// Add a CSRF token to all AJAX requests // Add a CSRF token to all AJAX requests
session.set("csrfToken", $("meta[name=csrf-token]").attr("content")); session.set("csrfToken", $("meta[name=csrf-token]").attr("content"));
_crsfCallbacks.add(function(options, originalOptions, xhr) { $.ajaxPrefilter(function(options, originalOptions, xhr) {
if (!options.crossDomain) { if (!options.crossDomain) {
xhr.setRequestHeader("X-CSRF-Token", session.csrfToken); xhr.setRequestHeader("X-CSRF-Token", session.get("csrfToken"));
} }
}); });
$.ajaxPrefilter(_crsfCallbacks);
} }
}; };
export function resetCsrfCallbacks() {
_crsfCallbacks.empty();
_crsfCallbacks = null;
}

View File

@ -16,7 +16,6 @@ import { resetDecorators } from "discourse/widgets/widget";
import { resetDecorators as resetPostCookedDecorators } from "discourse/widgets/post-cooked"; import { resetDecorators as resetPostCookedDecorators } from "discourse/widgets/post-cooked";
import { resetCache as resetOneboxCache } from "pretty-text/oneboxer"; import { resetCache as resetOneboxCache } from "pretty-text/oneboxer";
import { resetCustomPostMessageCallbacks } from "discourse/controllers/topic"; import { resetCustomPostMessageCallbacks } from "discourse/controllers/topic";
import { resetCsrfCallbacks } from "discourse/initializers/csrf-token";
export function currentUser() { export function currentUser() {
return Discourse.User.create( return Discourse.User.create(
@ -129,7 +128,6 @@ export function acceptance(name, options) {
resetPostCookedDecorators(); resetPostCookedDecorators();
resetOneboxCache(); resetOneboxCache();
resetCustomPostMessageCallbacks(); resetCustomPostMessageCallbacks();
resetCsrfCallbacks();
Discourse.reset(); Discourse.reset();
} }
}); });