我是用PHP编写Rest-Apis的新手。所以我使用Slim-Framework作为我的API。 现在我想用HTTP-Basic-AUTH保护API。
我的第一个决定是使用htaccess和htpasswd执行此操作并在Header中发送凭据
curl_setopt($curl, CURLOPT_HTTPHEADER, array("Authorization: Basic " . base64_encode("test:test")));
curl_setopt($curl, CURLOPT_URL, $url);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
这样工作,如果我更改用户或Pwd,服务器会抛出错误。
如果我在网上搜索确保Slim Rest Api,我总能找到像Slim / Extras / HttpBasicAuth.php这样的东西...... 我实现了这个,但我理解它有问题。 我还需要.htaccess和htpasswd文件,对吧?
如果是这样,使用HttpBasicAuth有什么好处?
通过jogi
答案 0 :(得分:0)
如果使用Basic Auth Middleware for Slim,则不需要.htaccess或.htpasswd文件。您在代码中的某处包含凭据。类似的东西:
$app = new \Slim\Slim();
$app->add(new \Slim\Middleware\HttpBasicAuth(array(
"path" => "/api",
"realm" => "Protected",
"users" => array(
"root" => "t00r",
"user" => "passw0rd"
)
)));
$app->get("/", function() {
echo "No password needed.";
});
$app->get("/api", function() {
echo "API protected by password";
});
$app->run();