Maison > Questions et réponses > le corps du texte
Je suis un novice en front-end et j'ai rencontré le problème de l'accès entre domaines, je suis donc venu ici pour demander conseil. Ce qui suit est un script jquery généré automatiquement par postman. Il est disponible dans postman, mais après avoir été placé dans. un certain accès HTML et inter-domaines se produira lors de l'accès. La question rejetée est illustrée dans la figure 1 ci-dessous.
var form = new FormData();
form.append("data", "[{\"serviceUrl\" : \"/bank_auth\",\"apiKey\" : \"3FE8D08DB99D326D\",\"areacode\":\"000000\"} ]");
var settings = {
"async": true,
"crossDomain": true,
"url": "http://xxx.xxx.com:58080/gateway-web-1.8.0/getTicket",
"method": "POST",
"headers": {
"cache-control": "no-cache",
"postman-token": "932148f8-c97b-631c-5a3e-8411a622abd9"
},
"processData": false,
"contentType": false,
"mimeType": "multipart/form-data",
"data": form
}
$.ajax(settings).done(function (response) {
console.log(response);
});
图1
Ce qui suit est le code d'accès utilisant jsonp que j'ai trouvé en ligne. Je peux accéder avec succès à l'interface getTicket, mais
Comment transmettre les données affichées dans le code ci-dessus au serveur ? , veuillez nous en aviser
Ce problème devrait être très simple pour toute personne ayant quelques bases du front-end, mais un novice comme moi ne sait pas comment le faire !
<script>
function submitForm(){
var form = new FormData();
form.append(
"data",
"[{\"serviceUrl\" : \"/bank_auth\",\"apiKey\" : \"3FE8D08DB99D326D\",\"areacode\":\"000000\"} ]");
var url = 'http://xxx.xxxxx.com:58080/gateway-web-1.8.0/getTicket';
$.ajax(url, {
data: form,
dataType: 'jsonp',
crossDomain: true,
success: function(data) {
if(data && data.resultcode == '200'){
console.log(data.result.today);
}
}//success: function(data)
}); //$.ajax(url, {
}//function submitForm()
function clearForm(){
$('#ff').form('clear');
}
</script>
Voici l'interface RESTFUL de mon serveur :
@RequestMapping(value = "/getTicket", method = { RequestMethod.POST, RequestMethod.GET })
public String executeTicket(HttpServletRequest request, HttpServletResponse response, String data)
黄舟2017-05-19 10:48:03
jsonp ne peut qu'obtenir, vous pouvez envisager d'utiliser CORS pour plusieurs domaines
function submitForm() {
var url = 'http://xxx.xxxxx.com:58080/gateway-web-1.8.0/getTicket';
$.ajax({
url: url,
method: 'post',
contentType:'application/json',
data: JSON.stringify({
serviceUrl: 'bank_auth',
apiKey: '3FE8D08DB99D326D',
areacode: '000000'
}),
dataType: 'json',
crossDomain: true,
success: function(data) {
if (data && data.resultcode == '200') {
console.log(data.result.today);
}
} //success: function(data)
}); //$.ajax(url, {
} //function submitForm()
function clearForm() {
$('#ff').form('clear');
}