感謝user357034你爲我在這裏(我「上」你的答案,但我是新的,沒有任何口碑)的。我想發佈我用來防止其他人遇到此問題的代碼。如果你看到任何看起來很愚蠢的東西,也可以獲得任何反饋。
首先,我創建了一個ASP文件,像這樣
Dim orderid
Dim status
orderid = Request.QueryString("orderid")
status = Request.QueryString("status")
sql = " update Orders " & _
" set OrderStatus = '" + status + "' " & _
" where Orderid in (" + orderid + ") " ;
set fs=Server.CreateObject("Scripting.FileSystemObject")
set f=fs.OpenTextFile(Server.MapPath("./MY_FILE.sql"),2,true)
f.WriteLine(sql)
f.Close
set f=Nothing
set fs=Nothing
我通過FTP,截至上Volusion「通用」文件夾中。
其次,在PHP中,我把這個文件中,類似這樣的...
$asp = file("http://MY_SITE/v/vspfiles/schema/generic/MY_FILE.asp?
orderid=11,12&status=Processing");
foreach ($asp as $line)
{
echo ($line);
}
注:我已經通過FTP XSD文件到同一文件夾具有相同的名稱,像MY_FILE.xsd。
最後,我做一個Web服務調用我的服務,像這樣...
$url = "http://MY_SITE/net/WebService.aspx?
Login=XXXX&EncryptedPassword=YYYYY&API_Name=Generic\MY_FILE"
的偉大工程。我進入Volusion管理站點,查看訂單11和12,並且它們已更新。我在Volusion的幾個領域使用這種方法,他們的API缺乏。謝謝!
您無法在上面顯示的URL中傳遞自定義SQL查詢或使用多個查詢參數。正如我之前所說的那樣,爲了解決這個問題,您需要構建一個自定義ASP頁面,您可以從所運行的任何應用程序(甚至是多個參數)中傳遞參數。然後用這些參數形成SQL查詢服務器端,並執行上述和我提供的計算器鏈接中的查詢。 Volusion API將回應數據並將其返回給您的應用程序。 – user357034
看起來像一個非常笨重的解決方案,但這就是我現在正在做的(直到Volusion支持回到我身上 - 這似乎不大可能)。我使用PHP。我正在動態創建一個SQL文件,將其添加到Volusion的「通用」文件夾中,然後通過Web服務調用調用我的文件(以執行SQL)。這感覺像一個非常繁重的過程(需要3-5秒,主要是FTP時間)。如果我可以在Web服務調用中發送參數來插入我的SQL,那麼我會更加高興....哦。謝謝您的幫助! – theCodeWhisperer
同樣,你可以做你想做的事情,你只需要在你的Volusion網站上創建一個ASP頁面,它檢索發送給它的參數,然後用這些參數將SQL查詢寫入「通用」文件夾中的文本文件。一旦寫入並驗證文件存在,此ASP頁面將執行文本文件的SQL查詢並返回請求的數據。這實際上是一個非常簡單的過程。 – user357034