-
-
Notifications
You must be signed in to change notification settings - Fork 882
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Bug: Application crash when attempting to renew ODP subscription, Microsoft Graph API responds with 308 Permanent Redirect without Location Header #3167
Comments
@sebastian-be |
@sebastian-be A full debug log will be needed to sort this issue out. Please provide this verbose debug log ASAP. |
Email with debuglog sent to support@mynas.com.au. |
* Fix JSON exception on subscription renewal when a 308 response is provided by the Microsoft Graph API
@sebastian-be As this issue relates to:
I have 100% zero way to test any fix to validate that this is resolved - sorry. Please can you test the PR below to potentially resolve your issue. First install all the require platform dependencies to build the client on your respective platforms. Please read https://github.com/abraunegg/onedrive/blob/master/docs/install.md#building-from-source---high-level-requirements and then follow correctly for your platform. Once this is done, to clone the PR to resolve your issue, you can use a script like the following:
This script will create a local folder called To run the PR, you need to run the client from the PR build directory:
To install the PR, you will need to perform When running the PR, your version should be: |
@sebastian-be Drilling into the details, Microsoft has broken their API yet again, now in this new area. This change has been brought about because of your Microsoft Account Change to the new Microsoft OneDrive backend for Personal Accounts. You can see this because your OneDrive 'root' now contains the string What is BrokenRFC 7538 specifies HTTP 308 Permanent Redirect. This RFC introduces the 308 status code, indicating that the requested resource has been permanently moved to a new URI. Clients should use the new URI for future requests, and the request method and body should remain unchanged. Microsoft Graph API fails to send any
This behavior is unconventional, as the 308 status code typically includes a Location header to indicate the new URI. Such cases suggest potential misconfigurations or unexpected behaviors within the API. What is supposed to happen308 Permanent Redirect is supposed to include a This is misuse of the 308 status code by the Microsoft Graph API in this context. Based on Microsoft documentation, 308 is not a standard response from PATCH operations. It might be an internal load-balancer issue or a rare bug in the West Europe Graph endpoint. If the subscription cannot be renewed, Microsoft Graph is supposed to return a 4xx or 5xx code, such as 400 Bad Request or 404 Not Found — not a 308. Next StepsPlease raise a bug report with Microsoft for their broken platform - this is something which I cannot fix within the application code. I have raised OneDrive/onedrive-api-docs#1895 to at least have some visibility elsewhere @nathan-gs @patrick-rodgers , @rgregg-msft , @chackman , @rgregg , @ificator |
@sebastian-be |
… to 308 redirect (#3172) * Fix JSON exception on subscription renewal when a 308 response is provided by the Microsoft Graph API * Add support for 307 and 308 re-directions * Update how create subscription is performed and what resourceItem path is used
Thx you for looking into this, that made the client-side gracefully handle the issue. |
Describe the bug
Seems to be crashing on webhook data.
With webhooks="false" no crashes
Operating System Details
Linux vault 6.8.0-52-generic #53-Ubuntu SMP PREEMPT_DYNAMIC Sat Jan 11 00:06:25 UTC 2025 x86_64 x86_64 x86_64 GNU/Linux Distributor ID: Ubuntu Description: Ubuntu 24.04.2 LTS Release: 24.04 Codename: noble
Client Installation Method
From Source
OneDrive Account Type
Personal
What is your OneDrive Application Version
onedrive v2.5.5-2-g62c3d87
What is your OneDrive Application Configuration
What is your 'curl' version
Where is your 'sync_dir' located
Local
What are all your system 'mount points'
What are all your local file system partition types
How do you use 'onedrive'
sharing content using linux client, microsoft client (native app) & Android client (native app)
Steps to reproduce the behaviour
configure and use webhooks
Complete Verbose Log Output
Screenshots
na
Other Log Information or Details
Additional context
No response
The text was updated successfully, but these errors were encountered: