View Single Post
Old 03-19-2021, 02:22 AM   #1503
davidfor
Grand Sorcerer
davidfor ought to be getting tired of karma fortunes by now.davidfor ought to be getting tired of karma fortunes by now.davidfor ought to be getting tired of karma fortunes by now.davidfor ought to be getting tired of karma fortunes by now.davidfor ought to be getting tired of karma fortunes by now.davidfor ought to be getting tired of karma fortunes by now.davidfor ought to be getting tired of karma fortunes by now.davidfor ought to be getting tired of karma fortunes by now.davidfor ought to be getting tired of karma fortunes by now.davidfor ought to be getting tired of karma fortunes by now.davidfor ought to be getting tired of karma fortunes by now.
 
Posts: 24,905
Karma: 47303824
Join Date: Jul 2011
Location: Sydney, Australia
Device: Kobo:Touch,Glo, AuraH2O, GloHD,AuraONE, ClaraHD, Libra H2O; tolinoepos
Quote:
Originally Posted by FaceDeer View Post
The error that pops up in Calibre itself is:

Code:
calibre, version 5.8.1
ERROR: Goodreads Failure: The request contacting Goodreads has failed. Please try again.

URL: https://www.goodreads.com/shelf/add_to_shelf.xml
Response Code: 404
b'<?xml version="1.0" encoding="UTF-8"?>\n<GoodreadsResponse>\n  <Request>\n    <authentication>true</authentication>\n      <key><![CDATA[UxvtOM3ogQWjfgiCnMleA]]></key>\n    <method><![CDATA[shelf_add_to_shelf]]></method>\n  </Request>\n  <error>\n    <code>40004</code>\n    <generic><![CDATA[One or more parameters contains a value that did not resolve]]></generic>\n      <detail><![CDATA[Book with that book_id not found]]></detail>\n      <friendly><![CDATA[Book with that book_id not found]]></friendly>\n  </error>\n</GoodreadsResponse>\n'
And the debug log reads:

Code:
  File "runpy.py", line 194, in _run_module_as_main
  File "runpy.py", line 87, in _run_code
  File "site.py", line 82, in <module>
  File "site.py", line 77, in main
  File "site.py", line 49, in run_entry_point
  File "calibre\debug.py", line 262, in main
  File "calibre\gui_launch.py", line 73, in calibre
  File "calibre\gui2\main.py", line 516, in main
  File "calibre\gui2\main.py", line 523, in run_main
  File "calibre\gui2\main.py", line 388, in run_gui
  File "calibre\gui2\main.py", line 404, in run_gui_
  File "calibre_plugins.goodreads_sync.action", line 292, in add_or_remove_to_shelf
  File "calibre_plugins.goodreads_sync.dialogs", line 1758, in action_button_clicked
  File "calibre_plugins.goodreads_sync.core", line 323, in add_remove_book_to_shelf
  File "calibre_plugins.goodreads_sync.core", line 151, in _oauth_request_post
  File "calibre_plugins.goodreads_sync.core", line 194, in _handle_failure
I would imagine that Goodreads should be responding with a 301 Moved Permanently instead of a 404 Not Found, but Goodreads hasn't struck me over the years as the best designed web site from a technical perspective.
That's pretty much what I expected. This isn't like using a browser to visit a page. This is an API call to a lower level application. The id is supplied as data and forwarding to another value is not necessarily the write thing. If anything returning a 404 could be considered wrong. Other APIs would return OK but return an error as part of the data.
davidfor is offline   Reply With Quote