Tên người dùng cuộn tròn PHP: $ mật khẩu

Ngày nay, xác thực cơ bản rất phổ biến trong khi thực hiện bất kỳ lệnh gọi API nào để xác thực yêu cầu. Xác thực cơ bản hoạt động với giao thức HTTP để xác thực yêu cầu HTTP của khách hàng

Xác thực cơ bản hoạt động như thế nào?

Trong một yêu cầu HTTP đơn giản, máy khách gửi yêu cầu đến máy chủ và máy chủ chịu trách nhiệm phục vụ yêu cầu. Máy chủ chỉ có thể xử lý yêu cầu nếu không có mật khẩu bảo vệ hoặc máy chủ cho phép truy cập trái phép. Nhưng ngày nay, mọi yêu cầu đều cần có một số loại ủy quyền để nhận được phản hồi. Vì vậy, xác thực cơ bản đi vào hình ảnh

Xác thực cơ bản yêu cầu tiêu đề ủy quyền cơ bản với yêu cầu HTTP gửi ở định dạng được mã hóa

Ví dụ: tiêu đề ủy quyền chứa tên người dùng và mật khẩu ở định dạng base64-encoded theo sau là từ Basic

'Authorization: Basic '. base64_encode("$username:$password")

Bây giờ nếu chúng tôi gửi yêu cầu cURL PHP được bảo vệ bởi xác thực HTTP, thì chúng tôi sẽ gặp lỗi truy cập trái phép i. e. 401 trái phép

401 Unauthorized: You need a valid user and password.

Một số nhà cung cấp API sử dụng mã thông báo truy cập từ và bí mật truy cập tương tự như tên người dùng và mật khẩu

Vì vậy, đừng nhầm lẫn với thuật ngữ dưới đây vì cả hai đều giống nhau

tên người dùng tương tự như mã thông báo truy cập
Mật khẩu tương tự như bí mật truy cập

Gửi yêu cầu API với xác thực cơ bản HTTP bằng PHP cURL

Bây giờ hãy xem đoạn mã đơn giản để tạo một yêu cầu API bằng cách sử dụng PHP curl với xác thực cơ bản HTTP. Như chúng ta biết rằng cURL chủ yếu được sử dụng để gọi API và ở đây chúng tôi sẽ sử dụng PHP cURL để thực hiện yêu cầu

Có một cách riêng khác để gọi trực tiếp cURL bằng cách chuyển xác thực đơn giản. Ở đây chúng tôi sẽ không sử dụng từ 'Basic' và xác thực được mã hóa. Mã được đưa ra dưới đây

Cách truyền dữ liệu hoặc tải trọng trong xác thực HTTP cơ bản bằng PHP cURL

Trong một số trường hợp, chúng tôi cần đăng một số dữ liệu cùng với yêu cầu cURL. Dữ liệu này còn được gọi là tải trọng, về mặt API. Vì vậy, hãy xem cách đăng dữ liệu tải trọng trong yêu cầu cURL. Ở đây, chúng tôi sẽ tạo một mảng đơn giản với một số dữ liệu tải trọng và encode nó ở định dạng json và chuyển vào CURLOPT_POSTFIELDS

Hôm nay, chúng tôi muốn chia sẻ với bạn các ví dụ về tiêu đề cấp quyền của PHP cURL Http. Trong bài đăng này, chúng tôi sẽ chỉ cho bạn các ví dụ về ủy quyền tiêu đề đặt cURL của PHP, hãy nghe mật khẩu tên người dùng xác thực http curl, chúng tôi sẽ cung cấp cho bạn bản demo và ví dụ để triển khai. Trong bài đăng này, chúng ta sẽ tìm hiểu về bộ mang ủy quyền tiêu đề php curl với một ví dụ

Các ví dụ về tiêu đề vượt qua ủy quyền http cURL của PHP

nội dung

Có những điều sau đây Giới thiệu về lệnh gọi API cURL đơn giản với xác thực bằng php (GET POST) Thông tin đầy đủ với ví dụ và mã nguồn

Vì tôi sẽ giới thiệu Bài đăng này với ví dụ Hoạt động trực tiếp để phát triển Gửi tên người dùng và mật khẩu bằng PHP CURL, vì vậy cách chuyển khóa api trong tiêu đề curl php được sử dụng cho ví dụ này như sau

Chào mừng bạn đến với hướng dẫn về cách thực hiện cuộc gọi PHP CURL với xác thực cơ bản HTTP. Cần bảo mật cuộc gọi từ máy chủ đến máy chủ mà không cần tất cả các công cụ đăng nhập, xác minh và mã hóa điên rồ?

Để thực hiện lệnh gọi PHP CURL với xác thực cơ bản HTTP, chúng tôi phải đặt người dùng và mật khẩu trong tùy chọn CURL

  • $ch = curl_init();
  • curl_setopt($ch, CURLOPT_URL, "//SITE.COM");
  • curl_setopt($ch, CURLOPT_HTTPAUTH, CURLAUTH_BASIC);
  • curl_setopt($ch, CURLOPT_USERPWD, "USER:PASSWORD");
  • curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
  • $result = curl_exec($ch);
  • curl_close($ch);

Điều đó sẽ bao gồm những điều cơ bản, nhưng hãy đọc để biết ví dụ thực tế

ⓘ Tôi đã bao gồm một tệp zip chứa tất cả mã nguồn khi bắt đầu hướng dẫn này, vì vậy bạn không cần phải sao chép-dán mọi thứ… Hoặc nếu bạn chỉ muốn đi sâu vào

 

 

TLDR – TRANG TRÌNH BÀY NHANH

Tải xuống & Ghi chú

 

TẢI XUỐNG & LƯU Ý

Đầu tiên, đây là liên kết tải xuống mã ví dụ như đã hứa

 

GHI CHÚ NHANH

  1. Ví dụ này dựa trên máy chủ XAMPP
  2. Chỉnh sửa protected/.htaccess, thay đổi AuthUserFile thành đường dẫn tệp của riêng bạn – Người dùng và mật khẩu mặc định trong $ch = curl_init();0 là $ch = curl_init();1 và $ch = curl_init();2
  3. Chỉnh sửa $ch = curl_init();3, thay đổi $ch = curl_init();4 thành của riêng bạn
Nếu bạn phát hiện ra một lỗi, hãy bình luận bên dưới. Tôi cũng cố gắng trả lời các câu hỏi ngắn, nhưng đó là một người so với cả thế giới… Nếu bạn cần câu trả lời gấp, vui lòng xem danh sách các trang web của tôi để được trợ giúp về lập trình

 

MÃ VÍ DỤ TẢI XUỐNG

Nhấp vào đây để tải xuống tất cả mã nguồn ví dụ, tôi đã phát hành nó theo giấy phép MIT, vì vậy hãy thoải mái xây dựng trên mã nguồn đó hoặc sử dụng nó trong dự án của riêng bạn

 

 

PHP CURL VỚI HTTP AUTH

Được rồi, bây giờ chúng ta hãy đi vào ví dụ về CURL với xác thực cơ bản HTTP

 

MÁY CHỦ A) GỌI PHP CURL

xác thực CURL. php

<?php // (A) THE SETTINGS $url = "//localhost/protected/secret.php"; $user = "USER"; $password = "PASS"; // (B) CURL INIT $ch = curl_init(); curl_setopt($ch, CURLOPT_URL, $url); curl_setopt($ch, CURLOPT_HTTPAUTH, CURLAUTH_BASIC); curl_setopt($ch, CURLOPT_USERPWD, "$user:$password"); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); if (substr($url, 0, 5)=="https") { curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, true); curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 2); } // (C) CURL EXEC // NOTE: HTTP RESPONSE CODE 200 = OK $result = curl_exec($ch); if (curl_errno($ch)) { echo curl_error($ch); } else { $info = curl_getinfo($ch); if ($info["http_code"] != 200) { print_r($info); } else { echo $result; } } curl_close($ch);

Điều này sẽ khá tự giải thích

  • Như trong phần giới thiệu, tất cả những gì chúng ta cần là thiết lập các tùy chọn CURL (_______10_______5 và $ch = curl_init();6) tương ứng
  • Nếu bạn gặp sự cố với SSL (_______10_______7), hãy thử tắt xác minh ngang hàng – $ch = curl_init();8
  • Lưu ý phần “tìm nạp kết quả”, chúng ta có thể sử dụng $ch = curl_init();9 để biết thêm thông tin về phản hồi của máy chủ. Điều quan trọng, hãy kiểm tra curl_setopt($ch, CURLOPT_URL, "//SITE.COM");0 – Xác thực không thành công thường sẽ trả về 401 (trái phép)

 

 

MÁY CHỦ B) THƯ MỤC ĐƯỢC BẢO VỆ

Đây là một bổ sung nhỏ cho các bạn đang chạy Apache và không biết cách bảo mật các thư mục bằng auth HTTP cơ bản

  1. Các máy chủ web Apache đi kèm với một công cụ có tên là curl_setopt($ch, CURLOPT_URL, "//SITE.COM");1 và chúng tôi có thể sử dụng công cụ này để tạo tệp người dùng/mật khẩu –  curl_setopt($ch, CURLOPT_URL, "//SITE.COM");2
  2. Tiếp theo, tạo một tệp curl_setopt($ch, CURLOPT_URL, "//SITE.COM");3 trong thư mục mà bạn muốn bảo vệ
    • curl_setopt($ch, CURLOPT_URL, "//SITE.COM");4
    • curl_setopt($ch, CURLOPT_URL, "//SITE.COM");5
    • curl_setopt($ch, CURLOPT_URL, "//SITE.COM");6
    • curl_setopt($ch, CURLOPT_URL, "//SITE.COM");7

Đó là tất cả

 

 

BIT BỔ SUNG & LIÊN KẾT

Đó là tất cả cho hướng dẫn chính và đây là một phần nhỏ về một số tính năng bổ sung và liên kết có thể hữu ích cho bạn

 

LIÊN KẾT và THAM KHẢO

  • Tùy chọn CURL – PHP
  • Xác thực và ủy quyền cơ bản – Apache
  • htpasswd – Quản lý tệp người dùng để xác thực cơ bản
  • Xác thực cơ bản cho IIS – Microsoft
  • Xác thực cơ bản cho NGINX

 

BẢNG CHEAT INFOGRAPHIC

Cảm ơn bạn đã đọc, và chúng tôi đã đi đến cuối. Tôi hy vọng rằng nó đã giúp bạn hiểu rõ hơn và nếu bạn muốn chia sẻ bất cứ điều gì với hướng dẫn này, vui lòng bình luận bên dưới. Chúc may mắn và mã hóa hạnh phúc

Làm cách nào để chuyển tên người dùng và mật khẩu trong cURL PHP?

Làm cách nào để gửi yêu cầu Curl bằng tên người dùng và mật khẩu? . password" và chuyển tên người dùng và mật khẩu cho Curl use the --user "username:password" command line parameter and pass the username and password to Curl . Tên người dùng và mật khẩu được phân tách bằng dấu hai chấm.

Làm cách nào để đặt xác thực cơ bản trong tiêu đề HTTP PHP?

Hàm php xác thực () { Tiêu đề ("WWW-xác thực. lĩnh vực cơ bản = 'Kiểm tra hệ thống xác thực'"); Tiêu đề ("HTTP/1. 0 401 Trái phép"); echo "Bạn phải nhập ID và mật khẩu đăng nhập hợp lệ để truy cập tài nguyên này\n"; thoát; } if(. ngay lập tức($PHP_AUTH_USER). ($Seen Before == 1 &&

Curl_init PHP là gì?

Hàm curl_init() sẽ khởi tạo một phiên mới và trả về một điều khiển cURL . hàm curl_exec($ch) nên được gọi sau khi khởi tạo phiên cURL và tất cả các tùy chọn cho phiên được đặt. Mục đích của nó chỉ đơn giản là thực thi phiên CURL được xác định trước (được cung cấp bởi ch).

PHP xử lý yêu cầu cURL như thế nào?

$url = "https. //www. javatpoint. com/"; $ch = curl_init(); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); curl_setopt($ch, CURLOPT_URL, $url); .

Chủ đề