set note type/mime in PUT body to avoid http proxy slash reencoding, fixes #2419

This commit is contained in:
zadam 2021-12-08 22:36:09 +01:00
parent ab550a1e8d
commit 97f7fe7b18
3 changed files with 4 additions and 7 deletions

View File

@ -133,9 +133,7 @@ export default class NoteTypeWidget extends NoteContextAwareWidget {
return;
}
await server.put('notes/' + this.noteId
+ '/type/' + encodeURIComponent(type)
+ '/mime/' + encodeURIComponent(mime));
await server.put('notes/' + this.noteId + '/type', { type, mime });
}
async confirmChangeIfContent() {

View File

@ -120,9 +120,8 @@ function protectNote(req) {
function setNoteTypeMime(req) {
// can't use [] destructuring because req.params is not iterable
const noteId = req.params[0];
const type = req.params[1];
const mime = req.params[2];
const {noteId} = req.params;
const {type, mime} = req.body;
const note = becca.getNote(noteId);
note.type = type;

View File

@ -213,7 +213,7 @@ function register(app) {
apiRoute(POST, '/api/notes/:parentNoteId/children', notesApiRoute.createNote);
apiRoute(PUT, '/api/notes/:noteId/sort-children', notesApiRoute.sortChildNotes);
apiRoute(PUT, '/api/notes/:noteId/protect/:isProtected', notesApiRoute.protectNote);
apiRoute(PUT, /\/api\/notes\/(.*)\/type\/(.*)\/mime\/(.*)/, notesApiRoute.setNoteTypeMime);
apiRoute(PUT, '/api/notes/:noteId/type', notesApiRoute.setNoteTypeMime);
apiRoute(GET, '/api/notes/:noteId/revisions', noteRevisionsApiRoute.getNoteRevisions);
apiRoute(DELETE, '/api/notes/:noteId/revisions', noteRevisionsApiRoute.eraseAllNoteRevisions);
apiRoute(GET, '/api/notes/:noteId/revisions/:noteRevisionId', noteRevisionsApiRoute.getNoteRevision);