2009-12-15 66 views
5

Tôi muốn phát triển một api đơn giản bằng cách sử dụng php.tạo api bằng cách sử dụng php

Chức năng của tôi là nếu một số người nhập một số giá trị bắt buộc thì họ sẽ nhận được kết quả tính toán từ thuật toán bên cạnh trang web của tôi.

Tôi không nhận được từ nơi tôi có thể bắt đầu. và cũng không nhận được bất kỳ mã mẫu nào cho API sử dụng PHP.

+3

Bạn muốn mọi người kết nối với API của bạn như thế nào? –

+0

có nghĩa là bạn đang nói về phương pháp? Nhận OR POSt? – Avinash

Trả lời

2

Một API thường là một cái gì đó bạn sẽ tạo cho phép các nhà phát triển khác để truy cập chương trình của bạn dễ dàng hơn.

Nhưng do âm thanh của những gì bạn đang làm, có vẻ như bạn chỉ cần tạo một trang đơn giản thực hiện một số phép tính và API có thể không cần thiết để bạn thực hiện việc này.

Tôi khuyên bạn nên tìm hiểu một số chung PHP tutorials trước cũng như một số cho processing forms.

13

Có vẻ như bạn muốn tạo một dịch vụ web mà người khác có thể kết nối, gửi câu trả lời và truy xuất kết quả.

Nếu đúng như vậy, bạn có ba tùy chọn, SOAP, XML-RPC và REST. Nếu đó là một API đơn giản, SOAP (và có lẽ XML-RPC) sẽ là quá mức cần thiết - bạn không muốn phải tạo một tệp WSDL, cài đặt thư viện máy chủ SOAP (mặc dù, Zend_Soap đủ phong nha). Mặt khác, REST sẽ cho phép mọi người dễ dàng sử dụng API của bạn.

Hãy xem xét một ví dụ, nói rằng bạn muốn cung cấp một đơn giản "tiền" dịch vụ (ví dụ, thêm một vài số điện thoại), bạn có thể có một URI scheme như thế này:

http://example.com/sum

để tổng hợp số 5, 8 và 9 người sử dụng dịch vụ web của bạn sẽ Pligg thực hiện một HTTP GET để

http://example.com/sum/5/8/9

chúng ta hãy giả vờ trong một khoảnh khắc mà tổng kết thực sự là một nhiệm vụ rất đắt tiền nên bằng cách sử dụng RES T và GET bạn có thể tận dụng lợi thế của bộ đệm ẩn HTTP để máy chủ của bạn không bị ảnh hưởng liên tục khi ai đó gửi cùng các tham số để tính toán.

Nếu dịch vụ web của bạn có tài nguyên không có tác dụng phụ (nghĩa là nó thay đổi thứ gì đó trong cơ sở dữ liệu), bạn nên sử dụng PUT, POST hoặc DELETE (PUT để cập nhật, POST để tạo và DELETE để xóa) các thông số HTTP nêu rõ các GET không nên có các tác dụng phụ. Tương tự, PUT và DELETE sẽ an toàn để lặp lại nếu bạn gặp lỗi hoặc kết nối mạng hết giờ.

Có một cuộc nói chuyện tốt (video và slide) trên REST đây: http://www.parleys.com/display/PARLEYS/Home#talk=31817742

+0

cảm ơn thông tin Nhưng tôi rất mới với điều này. Tôi không nhận được giải pháp cho điều này .... – Avinash

+1

REST rất đơn giản, chỉ cần có tệp PHP của bạn xem xét giá trị nào được chuyển như một phần của URI, trích xuất chúng, thực hiện phép tính và chỉ cần xuất nó - công việc đã hoàn thành. – philjohn

10

API là một số phương pháp có thể được gọi từ một ứng dụng khác. 'philjohn' đã nói một API đơn giản là sử dụng kỹ thuật REST.

Đây là ví dụ đơn giản để tạo API sử dụng PHP, cho phép nói bạn tạo API mới được gọi là 'tổng hợp' sử dụng URL này: http://localhost/v1/api.php?method=sum&var1=4&var2=5

trong file api.php bạn có thể viết mã như sau:

<?php 
if($_GET['method'] == 'sum') 
{ 
return $_GET['var1'] + $_GET['var2']; 
} 

chỉ đơn giản là cách tạo API. API nâng cao sẽ liên quan đến việc kiểm tra biến, kết nối với cơ sở dữ liệu, xuất ra với định dạng xml hoặc json, v.v.

1

Cách tốt nhất và dễ nhất là sử dụng các khuôn khổ và công cụ.

Tôi sử dụng APIATO (https://github.com/apiato/apiato) là một khung hoàn hảo để xây dựng các ứng dụng API-Centric có thể mở rộng và có thể thử nghiệm với PHP và Laravel.

Kiểm tra.

Các vấn đề liên quan