这是我的 $.ajax() 代码,但我无法让它工作。
在我将表单从 contentType: 更改"text/xml ; ",**
为contentType: "text/xml ; charset=UTF-8",
请求被破坏。但是,根据官方文档:api/$.ajax,我必须这样做,否则字符集将与服务器相同。
var soapRequest_add_a_new_story_to_db=
'<?xml version="1.0" encoding="utf-8"?>'+
'<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" '+
'xmlns:xsd="http://www.w3.org/2001/XMLSchema" '+
'xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">'+
'<soap:Body> '+
'<AddNewStory xmlns="http://x.x.x.x/StoryForMac/">'+
'<StoryID>'+story_id+'</StoryID>'+
'<UserName>' +User_Name+ '</UserName>'+
'<Story_CreateTime>'+Edit_Time+'</Story_CreateTime>'+
'<StoryName>'+Story_Name+'</StoryName>'+
'</AddNewStory>'+
'</soap:Body>'+
'</soap:Envelope>';
$.ajax({
type: "POST",
url: webServiceAddNewStoryToDbUrl,
contentType: "text/xml ; charset=UTF-8",
dataType: "xml",
data: soapRequest_add_a_new_story_to_db,
success: processSuccess, //If the SOAP connection sucessess, the function: processSuccess() will be called.
error: processError
});
我的另一个相关紧急问题Chinese Character 没有出现。和这个类似,如果有的话,请看一下。
更新:
请阅读文档的这一部分,(ctr+f,跳转到“processData”)。
我认为我的数据已经是一个查询字符串,所以我忽略了选项:processData。文档说:“如果要发送 DOMDocument 或其他未处理的数据,请将此选项设置为 false。” 但我的soapRequest_add_a_new_story_to_db不是 DOMDocument。“未处理”数据的定义是什么?请给出解释和相关参考文件。