Ниже приведен код для титана:
var request = Titanium.Network.createHTTPClient();
request.open("POST", bh.serverAddress + "MyCareer.svc/PostMessage/"+ bh.userID + "/" + bh.logic.profile.userID);
request.setRequestHeader("enctype", "multipart/form-data");
request.setRequestHeader("Content-Type", "text/json");
request.send(data_to_send);
request.onload = function() {
Ti.API.info(this.responseText);
bh.ui.profile.createWindow();
};
request.onerror = function(){
alert('Error while posting message');
};
Ниже приведен код для WCF:
Интерфейс:
[OperationContract]
[WebInvoke(Method = "POST",
UriTemplate = "/PostMessage/{userid}/{touserid}",
BodyStyle = WebMessageBodyStyle.WrappedRequest,
ResponseFormat = WebMessageFormat.Json,
RequestFormat = WebMessageFormat.Json)]
int PostMessage(string userid, string touserid, string message);
Класс:
public int PostMessage(string userID, string toUserID, string message)
{
MDBDataContext oMDB = new MDBDataContext();
int returnValue = oMDB.PostMessage(Convert.ToInt32(userID), message, Convert.ToInt32(toUserID));
oMDB.Dispose();
return returnValue;
}
Запрос: если я преобразую эту функцию в «GET», она будет работать очень хорошо. Но, с «POST» я получаю ошибку, и я не могу понять ошибку. Я включил трассировку также для WCF, но там нет ошибок.
Пожалуйста, помогите. Я застрял в этой точке. Я пытаюсь с iPhone симулятор.