公司用的第三方的短信接口然后基本功能都没什么问题可是到了接受状态报告缺死活接受不到用了$_POST,$_GET,$REQUEST都接受不到对方说是用java打印出来的是主动推送给我的接口现在我不知道怎么接受推送的内容勒补充:接口已经提交给短信方,现在的问题就是我的接口不知道怎么接受数据啊

2011-01-16 14:43:05

5 Answers

首先你要确定接口的方式,是简单的http,还是webservice之类,每一种方式都有不同的发送与接收方法.
1.确定通讯方法
2.确保通讯url是否有障碍
3.最好还是查看接口文档

2011-01-16 18:12:47

第三方接口会要求你提供一个用户的接口 当发送成功时,第三方会回调用户的接口
用户需要操作的话,就要在自己的接口内实现了
跟$_POST 和 $_GET 没关系
这些都要看第三方接口是如何设计的。
需要用户和第三方沟通

2011-01-16 19:33:55

这和你用了$_POST,$_GET,$REQUEST 这些都没有关系, 发短信成功了,第三方会主动请求你提供的地址的(这个地址是你自己提供的)
1、确保你的回调地址的正确性
2、第三方应该提供的有接口文档,自己模拟一个第三方请求地址 去请求你的回调地址,测试你的程序到底有没有问题

2011-01-16 21:43:05

这应该跟你没有联系吧,第三方一般会提供接口,你file_get_contents就行了,会有技术文档的

2011-01-16 22:51:11

短信接口应该打印的是输入流,不是真正的post或者get数据,所以你接受不到
下面几点内容你了解一下:
1,Coentent-Type仅在取值为application/x-www-data-urlencoded和multipart/form-data两种情况下,PHP才会将http请求数据包中相应的数据填入全局变量$_POST
2,PHP不能识别的Content-Type类型的时候,会将http请求包中相应的数据填入变量$HTTP_RAW_POST_DATA
3, 只有Coentent-Type不为multipart/form-data的时候,PHP不会将http请求数据包中的相应数据填入php://input,否则其它情况都会。填入的长度,由Coentent-Length指定。
4,只有Content-Type为application/x-www-data-urlencoded时,php://input数据才跟$_POST数据相一致。
5,php://input数据总是跟$HTTP_RAW_POST_DATA相同,但是php://input比$HTTP_RAW_POST_DATA更凑效,且不需要特殊设置php.ini
6,PHP会将PATH字段的query_path部分,填入全局变量$_GET。通常情况下,GET方法提交的http请求,body为空。

把接口的接受写成这样应该就没问题了:

<?php $raw_post_data = file_get_contents('php://input', 'r'); $rtn = ($raw_post_data == $HTTP_RAW_POST_DATA) ? 1 : 0; echo $rtn; ?>

2011-01-16 16:34:39
您不能回答该问题或者回答已经关闭!

相关文章推荐

  • C#开发中的反射机制

    反射的定义:审查元数据并收集关于它的类型信息的能力。元数据(编译以后的最基本数据单元)就是一大堆的表,当编译程序集或者模块时,编译器会创建一个类定义表,一个字段定义表,和一个方法定义表等

  • C#实例解析适配器设计模式

    将一个类的接口变成客户端所期待的另一种接口,从而使原本因接口不匹配而无法在一起工作的两个类能够一起工作

  • C#中using指令的几种用法

    using + 命名空间名字,这样可以在程序中直接用命令空间中的类型,而不必指定类型的详细命名空间,类似于Java的import,这个功能也是最常用的,几乎每个cs的程序都会用到

  • C#协变和逆变

    “协变”是指能够使用与原始指定的派生类型相比,派生程度更大的类型,“逆变”则是指能够使用派生程度更小的类型

  • C#运行时相互关系

    C#运行时相互关系,包括运行时类型、对象、线程栈和托管堆之间的相互关系,静态方法、实例方法和虚方法的区别等等

  • 使用托管C++粘合C#和C++代码(二)

    本文实现一下C++代码调用C#代码的过程。我构造一个简单并且直观的例子:通过C++ UI 触发C# UI.

  • C#开发高性能Log Help类设计开发

    项目中要在操作数据库的异常处理中加入写Log日志,对于商业上有要求,写log时对其它操作尽可能影响小,不能因为加入log导致耗时太多

  • C#中的索引器的简单理解和用法

    C#中的类成员可以是任意类型,包括数组和集合。当一个类包含了数组和集合成员时,索引器将大大简化对数组或集合成员的存取操作

  • Async和Await使异步编程更简单

    C#5.0中async和await两个关键字,这两个关键字简化了异步编程,之所以简化了,还是因为编译器给我们做了更多的工作

  • 使用托管C++粘合C#和C++代码(一)

    C#在xml读写,数据库操纵,界面构造等很多方面性能卓越;C++的效率高,是底层开发的必备武器

  • C#基础概念之延迟加载

    延迟加载(lazy load)是Hibernate3关联关系对象默认的加载方式,延迟加载机制是为了避免一些无谓的性能开销而提出来的,所谓延迟加载就是当在真正需要数据的时候,才真正执行数据加载操作

  • 深入C# 序列化(Serialize)、反序列化(Deserialize)

    C#中的序列化和反序列化,序列化是.NET运行时环境用来支持用户定义类型的流化的机制