注: さらなる調査 (および厚いスキンと大量のコーヒー)により、ストアが URL で uid と pwd を受信できないことが示唆され、ここでの PHP の例から、送信を暗号化する必要があることがわかりました。これは私の問題ですか?もしそうなら、私はこれを回避する方法について何も見つけることができませんでした.
open() コマンドで UID & PWD ウィンドウが開き、手動で値を入力できるようになれば幸いです。誰か提案がありますか。ありがとう!
私は BigCommerce API の使用方法を学んでおり、ストアの DB のすべてのフィールドから直接投稿/取得できるように VB / XL でプログラミングしています。
私は以前にこれをコーディングしたことがなく (VB は問題ありませんが)、行き詰まっています。次のコードがあります。
Const URL As String = "https://www.myurl.com/api/v2/brands.json"
Public Sub Test()
Dim xmlHttp As Object
Set xmlHttp = CreateObject("MSXML2.ServerXMLHTTP.6.0")
xmlHttp.Open "GET", URL, False, "myid", "mytoken"
xmlHttp.setRequestHeader "Content-Type", "application/json"
xmlHttp.send
Dim html As MSHTML.HTMLDocument
Set html = New MSHTML.HTMLDocument
html.body.innerHTML = xmlHttp.ResponseText
Range("A1").Value = html.body.innerHTML
End Sub
私が返すのは「401」またはより正確です:
[{"status":401,"message":"No credentials were supplied in the request."}]
URL をブラウザに配置して送信すると、UID と PWD のポップアップが表示され、使用している値をコードに配置すると、結果の BRANDS リストがブラウザ。
さらに、URL に「乱数」を追加して、返されたデータがここで提案されているようにキャッシュされないようにすると、要求は次のようになります。
xmlHttp.Open "GET", URL & "&t=" & WorksheetFunction.RandBetween(1, 99), False, `"myid", "mytoken"`
BC からの応答は次のように変わります。
406</STATUS><MESSAGE>The requested content type is not available.</MESSAGE></ERROR></ERRORS>
私もこれを試しました(UIDとPWDは正しい値です):
xmlHttp.Open "GET", URL & "&user=UID" & "&password=PWD", False
そして私は得る:
406</STATUS><MESSAGE>The requested content type is not available.</MESSAGE></ERROR></ERRORS>
誰でも私がplsを理解するのを手伝ってくれますか. MSDN の例に従いましたが、まだ行き詰まっています。BC API サイトには、VB の例があまりありません (実際にはありません!)。
ありがとうございました