2016-03-22 19 views
2

Uygulamamı php sunucusuyla iletişim kurmak için retrofit kullanıyorum. Ama doğrudan bir işlev PHP OO aramak istiyorum.Retrofit android kullanarak doğrudan bir işlev php nasıl çağırılır

Bu benim sınıf PHP'dir: app

class Car extends Obj { 

    public function __construct($name, $pathImg) { 
     parent::__construct($name, $pathImg); 
    } 

    function get() { 
     $engine = new Engine(55, 2016, '5.0'); 
     $brand = new Brand('MY BRAND', null); 
     $car = new Car('MY CAR', null, $brand, $engine); 

     header('Content-Type: application/json; charset=utf-8'); 
     echo json_encode(array('car' => $car)); 
    } 
} 

Benim güçlendirme API:

@FormUrlEncoded 
    @POST("package/ctrl/Car/") 
    Call<Car> get(@Field("id") int id); 

o PMS mevcut bir işlev doğrudan çağırmak mümkün mü? Ya da bunu yapmak için başka bir API kullanın?

cevap

1

Ben bir PHP adamı olmadığımı unutmayın. Bu yöntemi bir şekilde URL'den çağırabilirseniz mümkün olabilir (Google, yapılabileceğini söylüyor). Ancak korkunç bir uygulama - PHP işlevlerini çağırmak için herhangi bir kullanıcı erişim vereceksin.

Yine de, Retrofit ek açıklamaları ile URL yolunu değiştirebilir, parametreler ekleyebilir, gövde ekleyebilirsin, ancak bir PHP işlevini çağırabilirsiniz. Arabirim işlevinin adı hiç bir anlam ifade etmiyor. Bunu doğru şekilde yapın ve "package/ctrl/Car/{id}" gibi bir son nokta sağlayın veya normal RESTful api gibi bir POST isteği oluşturun.

İlgili konular