Skip to content

Commit ab31d36

Browse files
authored
Merge pull request scratchfoundation#4962 from LLK/hotfix/2019-07-02
Correctly fail on non-200 responses when saving
2 parents b4a0879 + 7362bd9 commit ab31d36

File tree

2 files changed

+9
-3
lines changed

2 files changed

+9
-3
lines changed

src/lib/project-saver-hoc.jsx

Lines changed: 8 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -234,9 +234,14 @@ const ProjectSaverHOC = function (WrappedComponent) {
234234
asset.dataFormat,
235235
asset.data,
236236
asset.assetId
237-
).then(
238-
() => (asset.clean = true)
239-
)
237+
).then(response => {
238+
// Asset servers respond with {status: ok} for successful POSTs
239+
if (response.status !== 'ok') {
240+
// Errors include a `code` property, e.g. "Forbidden"
241+
return Promise.reject(response.code);
242+
}
243+
asset.clean = true;
244+
})
240245
)
241246
)
242247
.then(() => this.props.onUpdateProjectData(projectId, savedVMState, requestParams))

src/lib/save-project-to-server.js

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -45,6 +45,7 @@ export default function (projectId, vmState, params) {
4545
return new Promise((resolve, reject) => {
4646
xhr(opts, (err, response) => {
4747
if (err) return reject(err);
48+
if (response.statusCode !== 200) return reject(response.statusCode);
4849
let body;
4950
try {
5051
// Since we didn't set json: true, we have to parse manually

0 commit comments

Comments
 (0)