Call csrf_exempt on DjangoResource.as_view.#22
Open
selectnull wants to merge 1 commit intotoastdriven:masterfrom
Open
Call csrf_exempt on DjangoResource.as_view.#22selectnull wants to merge 1 commit intotoastdriven:masterfrom
selectnull wants to merge 1 commit intotoastdriven:masterfrom
Conversation
For any custom endpoints that are not HTTP GET, csrf exemption is needed or the call will fail with HTTP 403.
Contributor
|
wouldn't this be better if its configurable? |
Author
|
@c-schmitt I don't think so for following reasons:
|
Owner
|
I'm fine with this change. It'd be nice to have a test added that demonstrates the issue (fails without the patch, works post-patch) to ensure that Restless doesn't regress in the future. Once we've got that, I'd be happy to merge this. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
For any custom endpoints that are not HTTP GET, csrf exemption
is needed or the call will fail with HTTP 403.
One might argue that this fix smells like someone wanting to implement rpc-like endpoints and one would not be necessarily wrong :) Nevertheless, API endpoints should not be protected with CSRF and this fix is consistent with
as_listandas_detailmethods.I haven't written a test because FakeHTTPRequest does not trigger CSRF so it wasnt just a case of writing another test; if you find this pull request valid I would like to implement proper tests.