上一篇博客说了ajaxgetjsonp跨域方式,需要注意的一些事项下面说一下post方式传输数剧以及后端接受。
先直接上ajax代码:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 | $(document).ready( function () {
$( '#submit1' ).click( function (){
var data = new FormData($( "#form1" )[0]);
data.append( "serect" , 12324234);
console.log(data);
$.ajax({
type: "POST" ,
url: "http://test/fuck" ,
data: data,
crossDomain: true,
contentType: false,
processData: false,
dataType: 'json' ,
success: function (data) {
}
});
return false;
});
|
登录后复制
注意的是一定要加上
crossDomain: true,这一行,不然你会报错,oringn cross 那个错,还有就是服务端一定要配置cros我用的laravel框架做后端,所以就要改一下几个东西。一就是要在入口文件配置cros代码如下:
1 2 3 4 5 6 7 8 | $response = $kernel ->handle(
$request = Illuminate\Http\Request::capture()
);
$response ->header( 'Access-Control-Allow-Origin' , '*' )
->header( 'Access-Control-Allow-Methods' , 'POST, GET, OPTIONS, PUT, DELETE' )
->header( 'Access-Control-Allow-Headers' , 'Content-Type, Accept, Authorization, X-Requested-With, Origin' )->send();
$kernel ->terminate( $request , $response );
|
登录后复制
二就是要在kernel.php关闭token验证,否则会在接收端报错:
\App\Http\Middleware\VerifyCsrfToken::class,
下边上服务端php代码
public function fuck(Request $request){
$data = $request->all();
return json_encode($data);
}
java服务端的我没接触过,以后再补上
以上就介绍了 ajax跨域post方式,包括了方面的内容,希望对PHP教程有兴趣的朋友有所帮助。