0

在我的网站中,出于安全目的,我使用infobip 2-Factor Authentication 。我在他们的网站上有一些代码显示错误,例如

Fatal error: Class 'HttpRequest' not found in C:\xampp\htdocs\test\OTP\send.php on line 2

代码如下:

发送.php

<?php
$request = new HttpRequest();
$request->setUrl('https://oneapi.infobip.com/2fa/1/pin');
$request->setMethod(HTTP_METH_POST);
$request->setHeaders(array
  ('accept' => 'application/json'
  ,'content-type' => 'application/json'
  ,'authorization' => 'App SECRET_KEY'));
  $request->setBody('{
  "applicationId": "YOUR_APPLICATION_ID",
  "messageId": "YOUR_MESSAGE_ID",
  "to": "PHONE_NUMBER"
}');

try
    {
        $response = $request->send();
        echo $response->getBody();
    } 
    catch (HttpException $ex) 
    {
        echo $ex;
    }
?>

以下代码用于请求,这也显示

Fatal error: Class 'HttpRequest' not found in C:\xampp\htdocs\test\OTP\request.php on line 3

请求.php

<?php
$request = new HttpRequest();
$request->setUrl('https://oneapi.infobip.com/2fa/1/pin/{PIN_ID}/verify');
$request->setMethod(HTTP_METH_POST);
$request->setHeaders(array('accept' => 'application/json', 'content-type' => 'application/json','authorization' => 'App YOUR_API_KEY'
));
$request->setBody('{"pin": "PIN_CODE"}');

try
   {
       $response = $request->send();
       echo $response->getBody();
   }   
   catch (HttpException $ex) 
   {
       echo $ex;
   }
?>
4

1 回答 1

1

好的,假设您在同一文件夹中有一个文件 HttpRequest.php ,并且在该文件中是

 class HttpRequest {
    ...
}

然后在调用它之前的某个地方,你需要告诉 php 。这是使用四种方法之一完成的,但我会这样做

require_once __DIR__.'/HttpRequest.php'; //assuming it's in the same folder.

请记住,这不是魔术,它只是计算机代码。它只知道你告诉它什么。我还希望您获得代码的地方会有一些关于如何安装设置它的基本说明,并且您阅读了它。

现在不是为了让你感到困惑,但选择是

include
include_once
require
require_once

我把这些放在这里只是为了说明,事情(通常)意味着他们在编程中所说的。所以包含,包含它,添加 *_once,只执行一次,如果在指定的位置找不到它,require 将抛出错误,从而使其成为必需。而 include 并不真正关心它是否真的被包括在内。

祝你好运!快乐编码。

于 2015-07-08T05:18:47.197 回答