Tamamen böyle değil ne hedefiniz ama burada işe yarayabilir 3-4 çözümler şunlardır:
Common Solutions
Rewrite
Bu probaly sizin API temiz URI'lere almanın en geleneksel yoludur. Eğer user.json kullanıcı parçası dinamik olmak istiyorsanız, bir php işleyici komut dosyası için URL'leri yeniden yazmak için mod_rewrite (yine Apache varsayarak) kullanabilirsiniz. Eğer geleneksel sığınakta stil URL yolu gidiş varsa, muhtemelen temiz /
ayrılmış URL ulaşmak için bu yine de kullanmak isteyeceksiniz.
# For grabbing all users
RewriteEngine on
RewriteRule ^users\.json rest.php [L]
# For grabbing one particular user
RewriteEngine on
RewriteRule ^([a-z0-9]+)\.json rest.php?user=$1 [L]
Rest.php PHP işleyici komut dosyası olduğu.
URL Rewriting without mod-rewrite
Eğer mod_rewrite kullanmak istemiyorsanız, ayrıca gibi bir şey yapabilirsiniz
example.com/rest.php/users.json
example.com/rest.php/user-id.json
ya da
example.com/rest.php/user-id
example.com/rest.php/user/user-id
Rest.php PHP işleyici komut dosyası olduğu. You can grab the user-id
from the URL (or URI if we're talking RESTful terms) using the $_SERVER
global with $_SERVER['REQUEST_URI']
.
Other solutions
Changing download name via Content-Disposition:
Sana Content-Disposition başlık eklemek istiyorum inanıyorum ...
<?php
header('Content-Disposition: attachment; filename="users.json"');
?>
Bu user.json olarak indirilecek dosya zorlar. Bu genellikle bir REST API için beklenen davranış değildir, ama soru ifadeli edildi yoldan, ben oraya atmak düşündüm.
AddHandler (or AddType)
Eğer bir Apache sunucusunu çalıştıran varsayarak, siz de sadece onlar php gibi .json
uzantılı dosyaları tedavi olmak için AddHandler
direktifini kullanabilirsiniz.
AddHandler application/x-httpd-php .json
Warning: Other plain .json files will be treated as PHP so you'd probably want to set this in a .htaccess file in the directory with the PHP script. This would work fine for this one URI but not ideal if you were exposing many URIs