API GET请求返回404

2024-09-30 01:29:17 发布

您现在位置:Python中文网/ 问答频道 /正文

我目前正在开发一个Django web应用程序,它应该基于InSales(一个流行的俄罗斯web平台)为在线商店添加一些功能。我使用Python的官方InSales lib pyinsales从注册的商店获取诸如订单产品之类的对象。在

insalesapi基于带有XML的REST请求。我使用下面的代码获取Django shell中的订单信息:

from install.models import Shop
from insales import InSalesApi
shop = Shop.objects.get(shop_url='shop-url.myinsales.ru')
api = InSalesApi(shop.shop_url, 'trackpost', shop.password)
orders = api.get_orders()

这里shop.shop_url是商店的网址(“哦,真的吗?”),trackpost是我的应用程序的名称,shop.password是连接所需的密码。密码由MD5生成(这是InSales规则)。这里我得到一个错误:

^{pr2}$

我已经检查了所有的错误。密码生成正确(根据官方文档),商店URL正确,库中的所有方法都正确使用。销售技术支持没有反应,所以现在我不知道发生了什么。在

我不希望您调试此问题,但我想知道是什么导致404错误(除了明显的问题,例如不正确的URL或密码)。感谢所有试图回答的人。在


Tags: djangofrom订单importweb应用程序url密码
2条回答

通过分析github上的pyinsales代码,我意识到url应该是myinsales域的一个子域名,所以如果完整的url是http://shop.myinsales.ru/那么pyinsales中的第一个参数应该是shop。遗憾的是,在自述文件中没有人指出这一点,但是这样的事情发生了

404意味着服务器找不到您请求的内容。在

https://en.wikipedia.org/wiki/HTTP_404

所以这不是一个身份验证问题,似乎在那个特定的端点没有命令。在

您是否尝试过使用python“requests”包而不是使用“pyinsales”模块直接从端点请求数据?这样你就可以自定义自己的标题等

您也可以尝试在postman这样的程序中测试端点,以确保端点在尝试以编程方式访问它们之前是有效的。在

相关问题 更多 >

    热门问题