Square Connect API 列出位置和库存调整 return 404 未找到
Square Connect API List Locations and Inventory Adjust return 404 not found
我可以毫无问题地获取所有类别和所有项目。当我尝试获取位置列表或调整库存时,我收到一条错误消息。
我获取位置的代码:
WebRequest 请求 = WebRequest.Create("https://connect.squareup.com/v1/me/locations");
request.ContentType = "application/json";
request.Method = "GET";
request.Headers["Authorization"] = "Bearer xxxxxxxxxxxxxxxxxxxxxx";
HttpWebResponse response = null;
string responseMessage = null;
response = (HttpWebResponse)request.GetResponse();
if (response.StatusCode == HttpStatusCode.OK)
{
using (Stream stream = response.GetResponseStream())
{
using (StreamReader reader = new StreamReader(stream))
{
responseMessage = reader.ReadToEnd();
}
}
}
我调整库存的代码是:
Uri uri = new System.Uri(string.Format("https://connect.squareup.com/v1/me/inventory/{0}", variationId));
WebRequest 请求 = WebRequest.Create(uri);
request.ContentType = "application/json";
request.Method = "PUT";
request.Headers["Authorization"] = "Bearer xxxxxxxxxxxxxxxxxxxxxx";
string postData = "{\"quantity_delta\":" + adjustAmount.ToString() + ",\"adjustment_type\":\"MANUAL_ADJUST\"}";
byte[] byteArray = Encoding.UTF8.GetBytes (postData);
request.ContentLength = byteArray.Length;
Stream dataStream = request.GetRequestStream ();
dataStream.Write (byteArray, 0, byteArray.Length);
dataStream.Close ();
HttpWebResponse response = null;
string responseMessage = null;
response = (HttpWebResponse)request.GetResponse();
if (response.StatusCode == HttpStatusCode.OK)
{
using (Stream stream = response.GetResponseStream())
{
using (StreamReader reader = new StreamReader(stream))
{
responseMessage = reader.ReadToEnd();
}
}
}
对于行中的两个语句 response = (HttpWebResponse)request.GetResponse();
我得到远程服务器返回错误:(404)未找到
非常感谢您的帮助,因为我不明白为什么我的部分代码可以工作,而这两部分却不行。
需要在 2016 年 2 月 16 日之后创建一个应用程序才能使用 v1 位置端点,如 Business Management Overview section: "The endpoints described in this section cannot be used by applications that were created before 16 February 2016. See Connect API changes (2016-02-16) 中所示以获取更多信息。“您能否验证该应用程序是否2016 年 2 月 16 日之后创建的?如果没有,请您创建一个新应用并尝试一下?
关于库存调整的 404,能否请您提供商品变体 ID 以供进一步调查?
我可以毫无问题地获取所有类别和所有项目。当我尝试获取位置列表或调整库存时,我收到一条错误消息。
我获取位置的代码: WebRequest 请求 = WebRequest.Create("https://connect.squareup.com/v1/me/locations"); request.ContentType = "application/json"; request.Method = "GET"; request.Headers["Authorization"] = "Bearer xxxxxxxxxxxxxxxxxxxxxx";
HttpWebResponse response = null;
string responseMessage = null;
response = (HttpWebResponse)request.GetResponse();
if (response.StatusCode == HttpStatusCode.OK)
{
using (Stream stream = response.GetResponseStream())
{
using (StreamReader reader = new StreamReader(stream))
{
responseMessage = reader.ReadToEnd();
}
}
}
我调整库存的代码是: Uri uri = new System.Uri(string.Format("https://connect.squareup.com/v1/me/inventory/{0}", variationId)); WebRequest 请求 = WebRequest.Create(uri); request.ContentType = "application/json"; request.Method = "PUT"; request.Headers["Authorization"] = "Bearer xxxxxxxxxxxxxxxxxxxxxx";
string postData = "{\"quantity_delta\":" + adjustAmount.ToString() + ",\"adjustment_type\":\"MANUAL_ADJUST\"}";
byte[] byteArray = Encoding.UTF8.GetBytes (postData);
request.ContentLength = byteArray.Length;
Stream dataStream = request.GetRequestStream ();
dataStream.Write (byteArray, 0, byteArray.Length);
dataStream.Close ();
HttpWebResponse response = null;
string responseMessage = null;
response = (HttpWebResponse)request.GetResponse();
if (response.StatusCode == HttpStatusCode.OK)
{
using (Stream stream = response.GetResponseStream())
{
using (StreamReader reader = new StreamReader(stream))
{
responseMessage = reader.ReadToEnd();
}
}
}
对于行中的两个语句 response = (HttpWebResponse)request.GetResponse(); 我得到远程服务器返回错误:(404)未找到
非常感谢您的帮助,因为我不明白为什么我的部分代码可以工作,而这两部分却不行。
需要在 2016 年 2 月 16 日之后创建一个应用程序才能使用 v1 位置端点,如 Business Management Overview section: "The endpoints described in this section cannot be used by applications that were created before 16 February 2016. See Connect API changes (2016-02-16) 中所示以获取更多信息。“您能否验证该应用程序是否2016 年 2 月 16 日之后创建的?如果没有,请您创建一个新应用并尝试一下?
关于库存调整的 404,能否请您提供商品变体 ID 以供进一步调查?