我正在尝试将django-impersonate与基于django-rest的服务器一起使用。
服务器是纯REST服务器,这是一个相当典型的单页应用程序,因此我的静态编译JavaScript托管在另一个子域上的不同服务器上。但是,看起来django-impersonate不能起作用。
以下是我对正在发生的事情的理解:当您尝试调用模拟端点时,它会进行重定向。但是,标准浏览器行为是跨源重定向剥离“授权”标头。哪种方式会破坏端点的目的。
以下是我收到的错误消息:
XMLHttpRequest cannot load http://192.168.33.10:8000/impersonate/1/. Redirect from 'http://192.168.33.10:8000/impersonate/1/' to 'http://192.168.33.10:8000/accounts/login/?next=/impersonate/1/' has been blocked by CORS policy: Request requires preflight, which is disallowed to follow cross-origin redirect.
我的问题是这是否有任何解决方法。由于django-impersonate包控制端点,我不能自己操纵CORS头,说实话我甚至不确定如果可以的话它会起作用。