2010-07-16 72 views
0

我有一個位於Apache服務器上的PHP編寫的REST API。它將一個文件作爲參數(15KB)。當我從J2ME應用程序調用這個API時,它確實工作正常。而且,當我用C#編寫API客戶端時,它工作得很好。Lighttpd上的REST API不接受文件

但現在我有了Lighttpd的第二臺服務器。我將我的API複製到此服務器,並從C#應用程序調用它,它工作正常。

我做的下一件事就是測試它是否可以從J2ME應用程序中工作。它似乎沒有。從服務器回報我得到3個字符,兩個第一個是正方形,第三個是字母j。怪怪的?

更有趣的是,當我模擬1B(字節)大小的傳遞文件時,它就像一個魅力。

所以簡而言之:我如何正確地將15 KB文件傳遞給位於J2ME應用程序的Lighttp上的REST API?

你是我最後一個幫助的手段,我不知道該怎麼做才能找出什麼是錯的。任何建議表示讚賞。

如果你希望我可以在這裏添加源代碼和服務器參數,如果需要的話 - 請在評論中寫下有用的信息。或者,也許你已經知道什麼是問題?

希望你能幫助我,我知道這不是一個嚴格的問題,例如:什麼是這樣或那樣的功能,但它仍然是一個問題嗎?

回答

0

你是否檢查過從兩臺服務器返回的頭文件(在第一次請求時)? J2ME可能正在尋找一個特定的返回頭文件來發送/發佈文件。也許是傳輸編碼類型?

一個1字節的文件最有可能會因爲它的大小而工作,特別是如果那個一個字節是換行符,因爲這將被解釋爲標題的一部分。

您的C#應用​​程序可能不是嚴格的限制。