Maison  >  Article  >  développement back-end  >  Le problème selon lequel le framework PHP appelle le backend Java et que les paramètres ne peuvent pas être transmis est résolu

Le problème selon lequel le framework PHP appelle le backend Java et que les paramètres ne peuvent pas être transmis est résolu

不言
不言original
2018-04-13 11:35:231720parcourir

Le contenu de cet article est de partager avec vous la solution au problème que le framework PHP appelle le backend Java et que les paramètres ne peuvent pas être transmis. Il a une certaine valeur de référence. Les amis dans le besoin peuvent s'y référer


 public function request($requestURL,$params='',$method ='GET',$contentType='',$user=''){
        $timeout = 30;
        $ch = null;
        if ('POST' === strtoupper($method)) {
            $ch = curl_init($requestURL);
            curl_setopt($ch, CURLOPT_POST, 1);
            curl_setopt($ch, CURLOPT_FRESH_CONNECT, 1);
            curl_setopt($ch, CURLOPT_FORBID_REUSE, 1);
            if (is_string($params)) {
                curl_setopt($ch, CURLOPT_POSTFIELDS, $params);
            } else {
                curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($params));
            }
        } else if('GET' === strtoupper($method)) {
            if(is_string($params)) {
                $real_url = $requestURL. (strpos($requestURL, '?') === false ? '?' : ''). $params;
            } else {
                $real_url = $requestURL. (strpos($requestURL, '?') === false ? '?' : ''). http_build_query($params);
            }
            $ch = curl_init($real_url);
        } else {
            $args = func_get_args();
            return false;
        }
        if ($contentType) {
            curl_setopt($ch, CURLOPT_HTTPHEADER, array('Content-Type:'.$contentType));
        }
        if ($user) {
            curl_setopt($ch, CURLOPT_USERPWD, $user);
        }
        curl_setopt($ch, CURLOPT_HEADER, 0);
        curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
        curl_setopt($ch, CURLOPT_TIMEOUT, $timeout);
        
        $ret = curl_exec($ch);
        $info = curl_getinfo($ch);
        $contents = array(
            'httpInfo' => array(
                'send' => $params,
                'url' => $requestURL,
                'ret' => $ret,
                'http' => $info,
            )
        );
        curl_close($ch);
        return $ret;
    }



Système.out.println("Contenu Tapez : " + request.getContentType());

Le Content Type transmis avant cette méthode est text/html

Le la valeur transmise sera supprimée plus tard et elle sera vide, la valeur par défaut transmise est application/x-www-form-urlencoded

Recommandations associées :

Comment installer et utiliser le framework PHP slim

La relation entre le framework PHP et le CMS


Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn