网页APP与后端JSON通讯方案
- 2019 年 10 月 6 日
- 筆記
后端api.php,用于对客户端请求进行处理
<?php include_once( 'api.function.php' ); header("Content-type:application/json"); header("Access-Control-Allow-Origin: *"); $action = $_GET['action']; if($action == "" || $action == NULL) { SendReply(ERR_GENERAL,""); } else if(!function_exists($action)) { SendReply(ERR_GENERAL,""); } call_user_func($action); function hello_world() { $data = "HELLO WORLD!"; SendReply(ERR_NOERROR,$data); } function hello() { if(!v( 'msg' )) SendReply(ERR_GENERAL,""); $msg = v( 'msg' ); $data = $msg; SendReply(ERR_NOERROR,$data); } ?>
后端api.function.php,用于定义常规函数
<?php define("ERR_NOERROR",0); define("ERR_GENERAL",1); function SendReply($err_code = 0, $content = "") { $reply = array( "ERROR" => $err_code, "CONTENT" => $content ); echo json_encode($reply); exit(); } function v( $str ) { return isset( $_REQUEST[$str] ) ? $_REQUEST[$str] : false; } ?>
前端javascript,需要jQuery
function hello_world() { $.post( 'api.php?action=hello_world' , {} , function( data ) { console.log(data); }); } function hello(string) { $.post( 'api.php?action=hello' , {'msg':"say sth"} , function( data ) { console.log(data); }); }