在php中调用java接口吗,php 调用 java 接口

php 需要开启 curl模块

/*

* HTTP 请求函数封装

*/

function http_request_cloudzone($url, $data){

//var_dump($url."test");

if(!$url){

return "";

}

$ch = curl_init ();

curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, FALSE); //禁用证书

curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);

curl_setopt ($ch, CURLOPT_HEADER, 0); //头文件信息做数据流输出

curl_setopt ($ch, CURLOPT_URL, $url);

curl_setopt ($ch, CURLOPT_RETURNTRANSFER, 1);

curl_setopt ($ch, CURLOPT_CONNECTTIMEOUT, 10);

curl_setopt ($ch, CURLOPT_POST, 1); //启用POST提交

curl_setopt($ch, CURLOPT_POSTFIELDS, $data);

$output = curl_exec ($ch);

curl_close ($ch);

return json_decode($output, true);

}

// 请求获取登陆用户信息

// http://localhost/wiki/test.php?userId=71D68F2D8C780B6D785F392ED024B701359CBF3CCBDB25D5&appId=CNGDLG0200000000000&interfacesURL=http://192.168.102.114/cloudzone/

// {\"appId\":\"CNGDLG0200000000000\", \"userId\":\"71D68F2D8C780B6D785F392ED024B701359CBF3CCBDB25D5\"}"

// rsp { ["appInfo"]=> array(3) { ["appId"]=> string(19) "CNGDLG0200000000000" ["webUrl"]=> string(36) "http://192.168.113.127/wiki/test.php" ["webUrlWan"]=> string(36) "http://192.168.113.127/wiki/test.php" } ["serverResult"]=> array(2) { ["resultCode"]=> int(0) ["resultMessage"]=> string(6) "成功" } ["teacherClassList"]=> array(0) { } ["token"]=> string(112) "183cfa43aa68d5b3c393753e173e914626b859e14ee40df68ba289324d8706d7679be1e96c2a3a2e333d6972bd521b9b4fb45e0d6dd1e2ee" ["userInfo"]=> array(11) { ["encryptedUserId"]=> string(48) "71D68F2D8C780B6D785F392ED024B701359CBF3CCBDB25D5" ["gender"]=> string(0) "" ["lastModifyTime"]=> string(19) "2016-02-29 09:49:02" ["loginName"]=> string(4) "test" ["schoolId"]=> string(19) "CNGDLG0600000000001" ["schoolName"]=> string(6) "学校" ["schoolSection"]=> string(14) "PRIMARY_SCHOOL" ["staticPassword"]=> string(16) "a83a68c6e9967731" ["userAccount"]=> string(19) "CNGDLG0600000000025" ["userName"]=> string(4) "test" ["userType"]=> string(1) "2" } ["xmppInfo"]=> array(3) { ["xmppHeartbeatPort"]=> string(4) "9090" ["xmppIp"]=> string(22) "http://192.168.102.114" ["xmppServer"]=> string(34) "http://http://192.168.102.114:9090" } }

// 新增TW教育云鉴权同步登陆入口方法

function dotwauthentication(){

if(!$this->get['2'] || !$this->get['3'] || !$this->get['4']){

$this->header("");

}

$url = $this->get['2'];

$data['userId'] = $this->get['3'];

$data['appId'] = $this->get['4'];

$data_json = json_encode($data);

$url = $url."/ClientApi/getAuthenticationInfo";

$output_json = $this->http_request_cloudzone($url, $data_json);

if($output_json){

$rsp_code = $output_json["serverResult"]["resultCode"];

if($rsp_code == 0){

// 请求成功

$twuserid= $output_json["userInfo"]["userAccount"];

$twuserpwd= $output_json["userInfo"]["staticPassword"];

$twusername= $output_json["userInfo"]["userName"];

$des_java_c = new DES_JAVA();

$twuserpwd= $des_java_c->decrypt($twuserpwd);

$this->dotwsysuser($twusername, $twuserid, $twuserpwd);

}else{

//请求失败

$this->header('');

}

}else{

//请求失败

$this->header('');

}

}

C#调用JAVA接口WSSE方式用WebClient方式

C#读取JAVA的WSSE接口的调用代码: 用webclient 方式: /// /// 调用java cxf ws_security加密的服务wcf客户端对应的加密类 ...

android NDK 实用学习(五)-c++端调用java接口

1,阅读此文章前请阅读前面文章,以免阅读出现障碍: android NDK 实用学习(一)-获取java端类及其类变量 android NDK 实用学习(二)-java端对象成员赋值和获取对象成员值 ...

C#调用java接口报“Fault occurred while processing”异常问题

服务在通常项目中总是要用到的C#的webservice.wcf,还有第三方的,比如java服务.一般来说调用都不会有什么问题,因为服务的标准都是一样的.要注意的就是:1.参数个数匹配:2.参数类型和返 ...

对接第三方平台JAVA接口问题推送和解决

前言 本节所讲为实际项目中与第三方对接出现的问题最后还是靠老大解决了问题以此作为备忘录,本篇分为三小节,一小节解析Java加密接口数据,二小节解析XML文件需注意问题,最后一节则是请求Java Soa ...

C#调用Java WebService int、DateTime等类型值接收到为空

今天在调用Java接口时,有个int类型的值很明确的传了1,但接口一直返回没有接收到这个值. 解决方法: 引用接口时,VS会自动生成一个类,类中对于非string类型的字段会生成一个xxSpecifi ...

java接口调用——webservice就是一个RPC而已

很多新手一听到接口就蒙逼,不知道接口是什么!其实接口就是RPC,通过远程访问别的程序提供的方法,然后获得该方法执行的接口,而不需要在本地执行该方法.就是本地方法调用的升级版而已,我明天会上一篇如何通过 ...

规则引擎集成接口(七)规则引擎调用Java类

规则引擎调用Java类 通过myEclipse编写一个简单工程,其中方法是两数相加等到结果,既结果1=输入值1+输入值2.实现规则调用外部接口的方法有三种. 1:接口实例:在myEclipse中制作一 ...

Java调用webservice接口方法

java调用webservice接口   webservice的 发布一般都是使用WSDL(web service descriptive langu ...

OpenCV4Android开发之旅(一)----OpenCV2.4简介及 app通过Java接口调用OpenCV的示例

转自:  http://blog.csdn.net/yanzi1225627/article/details/16917961 开发环境:windows+ADT Bundle+CDT+OpenCV-2 ...

随机推荐

Maven使用archetype迅速生成项目骨架

archetype意思是"原型",相当于项目模板.archetype是maven的一个插件,相当于模板工具包. 一个十分重要的mvn指令:mvn 插件名:目标名maven自带三个内 ...

HTML常用标签与表格标签

超链接标签: 超链接的文字 _blank或new是在新网页中打开 ...

mysql学习笔记 第七天

数据库的备份与还原 数据库的备份与还原是后面章节的内容,但是在学习的时候已经需要数据的备份与还原了,所以就了解了一下.数据库有很多种备份方法,我学习的是其中的一种 备份: 对于数据库的备份: C:&g ...

社保系列11《ATR》

1)  冷复位(Cold Reset) 当IC卡的电源电压和其他信号从静止状态中复苏且申请复位信号时,IC卡产生的复位. 2)  热复位(Warm Reset) 在时钟(CLK)和电源电压(VCC)处 ...

(五)u-boot2013.01.01 for TQ210:《移植前的准备及u-boot初编译》

移植前的准备 移植前,要做的事情是搭建开发环境以及对U-boot源码的获取.首先说一下开发环境: 1.此次U-boot移植的硬件平台是天嵌的TQ210开发板: CPU:板载核心是S5PV210(Cor ...

ECMALL目录结构设置与数据库表

[Ecmall]ECMALL目录结构设置与数据库表   最近在做ecmall的开发,ecmall在开源方面还有待进步啊,官方没有提供开发文档,也没有关于系统架构组织的贡献,使用者都要自己从0开始,官方 ...

soap协议有get方式

今天去面试,被问到了这个问题.一时没想起来.考官的说法是没有 get,使用post 发请求.restful 有get put delete等谓词. 特地查了一下.记在下边.

Systemd 入门教程:命令篇

http://www.ruanyifeng.com/blog/2014/09/illustration-ssl.html

java.sql.Date to java.util.Date

发这篇博文的题目可能无法直接表示内容,但是确实是java.sql.Date和java.util.Date. 今天在使用'net.sf.json.JSONObject'封装json数据的时候,碰到很奇怪 ...

Python自建logging模块

本章将介绍Python内建模块:日志模块,更多内容请从参考:Python学习指南 简单使用 最开始,我们用最短的代码体验一下logging的基本功能. import logging logger = ...

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/519203.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

像数据科学家一样思考:12步指南(下)

第三阶段-完成 一旦产品构建完成,你仍然需要做一些事情来使项目更加成功并使你的未来生活更轻松。那么我们如何完成数据科学项目呢? 10-交付产品 完成阶段的第一步是产品交付。为了创建可以交付给客户的有效产品,首先必须了解客户的观点。其…

数据加载操作手册

文章目录一、基础资料准备1.1.表名规约1.2.设计1套临时表和1套同构层表1.3.存储过程二、流程规范2.1. 生成控制文件(.ctl)2.2. 拉取ods推送的数据文件2.3. 数据加载数据同步三、手动调度3.1. 到下载的数据文件路径:3.2. 数据文件筛选3.3. 将要加载的表的备份表清空;…

基于Tablestore管理海量快递轨迹数据架构实现

快递轨迹管理 对于一个快递公司,在全国范围内有着大量的快递点、快递员、运输车辆以及仓储中心。而快递自产生后,就会在这些地点、人物之间流转。因而,一套完善的快递管理追踪系统是快递公司的重要管理工具; 用户通过平台客户端…

完了!Python黄了! 80%的程序员:痛快!你怎么看?

Python真的万能语言?在我的一个朋友看来,他坚信 Python 可以做任何事情。其实我是不服的,因为我在某网站看到有条评论:Python将要黄了!事实究竟如何?这篇文章会揭开这个黑幕,让程序员看清现实&a…

趣谈预留实例券,一文搞懂云上省钱最新玩法

ECS近期推出了预留实例券(Reserved Instances),简称RI,这东西很cool,今天我们聊聊这个。 首先这篇Blog不是文档,读完后想详细了解文档的朋友请点击 一个小故事 我来给大家讲一个故事理解云上的几种付费方…

到底什么是空指针?如何避免空指针_01

文章目录1. 场景案例2. 针对于空指针的场景,有哪些方式可以避免问题1. 场景案例 package com.gblfy;import org.springframework.beans.factory.annotation.Autowired;import javax.servlet.http.HttpServletRequest;/*** 理解什么是空指针*/ public class WhatIsn…

在 IntelliJ IDEA 中部署应用到服务器(Eclipse)

在之前的文章《在 Intellij IDEA 中部署 Java 应用到 阿里云 ECS》中讲解了如何将一个本地应用部署到阿里云 ECS 上去,有些读者反馈目前还有一些测试机器是在经典网络,甚至是在本地机房中,咨询是否可以通过 Cloud Toolkit 插件将应用部署到这…

linux所有文件打包压缩,Linux基础教程:对文件打包压缩

一、须知文件数量太多, 如果需要拷来拷去是不是很麻烦? 怎么办? 打包!文件太大,通过网络下载、传输会不会很费时间? 怎么办? 压缩!在Linux环境中,打包压缩文件的…

钉钉平台助力中国一汽疫情防控 数字化迈入新阶段

面对突如其来的疫情,中国一汽紧急应对、快速响应,携旗下一汽-大众、一汽丰田捐赠资金8100万元,并成立了疫情防控专项基金。同时,通过旗下“一汽出行”公司组织 “特别爱心车队”,在抗击疫情期间,提供安全、…

自动拆箱引发的空指针_02

文章目录1. 场景案例2. 规避自动拆箱引发的空指针的建议1. 场景案例 package com.gblfy;/*** 自动拆箱引起的空指针问题场景*/ public class Unboxingnpe {private static int add(int x, int y) {return x y;}private static boolean compare(long x, long y) {return x >…

阿里靠什么支撑 EB 级计算力?

阿里妹导读:MaxCompute 是阿里EB级计算平台,经过十年磨砺,它成为阿里巴巴集团数据中台的计算核心和阿里云大数据的基础服务。去年MaxCompute 做了哪些工作,这些工作背后的原因是什么?大数据市场进入普惠红海的新阶段&a…

linux查看网卡的驱动命令行,Linux下查看网卡驱动和版本信息

Linux下查看网卡驱动和版本信息查看网卡生产厂商和信号查看基本信息:lspci查看详细信息:lspci -vvv # 3个小写的v查看网卡信息:lspci | grep Ethernet查看网卡驱动查看网卡驱动信息:lspci -vvv # 找到网卡设备的详细信息&#xff…

为什么说流处理即未来?

本文整理自 Flink 创始公司 Ververica 联合创始人兼 CTO - Stephan Ewen 在 Flink Forward China 2018 上的演讲《Stream Processing takes on Everything》。 这个演讲主题看似比较激进:流处理解决所有问题。很多人对于 Flink 可能还停留在最初的认知,…

别再用那些已经淘汰的技术了!2020 年 9 大顶级 Java 框架出炉!!

来源 | Patricia Neil责编 | Carol出品 | CSDN云计算(ID:CSDNcloud)顶级Java框架#1:Spring顶级Java框架#2:Hibernate顶级Java框架#3:Struts顶级Java框架#4:Play顶级Java框架#5:Googl…

字符串、数组、集合在使用时出现空指针怎么办?_03

文章目录1. 寻找代码案例中出错的场景2. 案例1. 寻找代码案例中出错的场景 字符串使用equals时报空指针错误 对象数组最燃new出来了,但是如果没有初始化,一样会报空指针错误 List对象add null不报错,但是addAll 不能添加null,否则…

云原生时代来袭 下一代云数据库技术将走向何方?

全面云化的时代已经到来,面对一系列的新技术和挑战,数据库市场将面临怎样的变革?作为云服务提供商,如何帮助更多的企业级用户把握“云”潮,提供最高效、最具价值的数据库解决方案? 日前,在阿里…

linux popd 命令,Linux中的pushd推入和popd弹出命令

pushd和popd是允许您使用目录堆栈并在Linux和其他类似Unix的操作系统中更改当前工作目录的命令。尽管pushd和popd是非常强大和有用的命令,但它们却被低估并且很少使用。在本教程中,我们将向您展示如何使用pushd和popd命令导航系统的目录树。目录堆栈目录…

开发跨平台app推荐React Native还是flutter?

嗯。。。这个问题十分不好回答啊(捋下鱼须)。闲鱼作为flutter领域的先驱者,以及fish_redux、flutter_boost等当红flutter库的作者,当然是欢迎广大的开发者多多使用flutter相关技术栈 逃~:)。咳咳,不过呢,我们还是正经得聊一下Reac…

直播连麦贾扬清,谈谈他所理解的四大 AI 落地问题 | 攻“疫”技术公开课

从机器学习模型的层次来看,大致经历了两次发展浪潮:浅层学习(Shallow Learning)和深度学习(Deep Learning)。1980年代,人工神经网络的反向传播算法(也叫Back Propagation算法或者BP算…

解决linux下创建用户时出现Creating mailbox file: File exists

在linux下用useradd添加用户时,出现错误: Creating mailbox file: File exists? 为什么会出现这样的问题? 原来linux下添加用户后,会在系统里自动加一个邮箱(系统邮箱) 路径是:/var/spool/mail/用户名. 可以直接用命令#rm -rf /var/spool/mail/用户…