这可能是一个非常简单的问题,但在我浏览了paypal网站的大部分内容并咨询了一些在线教程后,我没有任何头绪(好吧,只有一点点头绪)。
我是一个新手,虽然我玩过php &html等,相当多年,我从来没有尝试过这样的东西。我应该指出,我已经做了一些简单的cakephp项目,所以我认为我对它足够满意,我也不是为商业项目这样做,这只是为了让我可以学习;)
我想建立的是一个应用程序,需要我的用户有一个贝宝帐户。考虑到这一点,我有一个注册页面,收集用户贝宝电子邮件和一些其他比特的信息与我的网站。然后我想使用paypal认证服务https://www.x.com/community/ppx/authentication,以确保他们有一个paypal帐户。
文档谈到发送请求和接收响应,这是我以前没有做过的,这让我很困惑。
我最好的猜测是我有我的表单,我的用户填写,然后点击提交。这提交给一个动作在我的用户控制器发送请求-从我可以收集到,涉及到我做$ This ->redirect(array('action' => 'https://api-3tpaypal.com/nvp'));但我不确定究竟如何附加各种参数,这意味着去与之。
之后我猜不出来了。我不知道我是如何收到响应的,也不知道它去了哪里,尽管我知道一旦我设法得到了它,我需要在做其他事情之前以某种方式检查它,看看它是否成功。
我意识到这可能是我真的应该知道的事情,但我以前从来没有做过。我也保证我在paypal网站上读了很多,但我仍然很困惑。
如果有什么贤者愿意帮助我这个初出茅庐的程序员,我将不胜感激
Thanks so much:)
茱莉亚我不知道Cake框架,但总的来说这是NVP API的工作方式。
- 方法,参数作为URL本身的一部分发送,主要作为HTTP GET请求发送,但也可以作为HTTP POST发送到服务器。对于GET, URL格式类似:
http://domain.com/method_name/?param1=value1¶m2=value2¶m2=value3
。
- 在HTTP POST的情况下,参数不是URL的一部分,而是单独发送的。所以URL格式不包含任何参数。
处理HTTP POST,这里有一个使用curl
//set POST variables
$url = 'http://domain.com/method_name/';
$fields = array(
'USER'=>urlencode('API_usernam'),
'PWD'=>urlencode('API_password'),
'SIGNATURE'=>urlencode('API_signature'),
'VERSION'=>urlencode('version'),
);
//url-ify the data for the POST
foreach($fields as $key=>$value) { $fields_string .= $key.'='.$value.'&'; }
rtrim($fields_string,'&');
//open connection
$ch = curl_init();
//set the url, number of POST vars, POST data
curl_setopt($ch,CURLOPT_URL,$url);
curl_setopt($ch,CURLOPT_POST,count($fields));
curl_setopt($ch,CURLOPT_POSTFIELDS,$fields_string);
//execute post
$result = curl_exec($ch);
//close the connection
curl_close($ch);
//print result data from server
var_dump($result);
更多,Curl库是相当不错的。我建议你阅读文档& &;从这里开始。
希望有所帮助