getFile sometimes returns an object for Dropbox.
Opened this issue · 0 comments
There appears to be an issue where getFile
retrieves and object from the Dropbox API it returns an object instead of a string. This does not appear to happen if the result is loaded from the cache.
This appears to be a bug because according to the docs "A file is raw data, as opposed to a JSON object"
Response from cache:
{
"data": "{\"title\":\"New Recipe2\",\"servings\":4,\"ingredients\":[],\"steps\":[{\"instruction\":\"No steps.\"}]}",
"contentType": "application/json"
}
Response from Dropbox API:
{
"data": {
"title": "New Recipe2",
"servings": 4,
"ingredients": [],
"steps": [
{
"instruction": "No steps."
}
]
},
"contentType": "application/json; charset=UTF-8"
}
Example code with workaround: https://gitlab.com/kevincox/recipes/-/blob/5b8b92be2e1ecadab45267a320abc619b4f776cb/src/db.js#L27-34
You can see it live at the following URL (for now, can't provide a permalink due to API token URL restrictions). Try creating a recipe and saving. The page reloads the recipe (usually from cache) and the logged response is a string. If you reload the page it will come from the server and log an already-parsed object. https://recipes.kevincox.ca/