CGI(Common Gateway Interface)是一種標(biāo)準(zhǔn)協(xié)議,它允許Web服務(wù)器與另一個(gè)程序來交換數(shù)據(jù),這個(gè)程序可以是CGI腳本,Perl腳本,Python腳本等等。最近,使用JSON傳輸數(shù)據(jù)被廣泛使用,本文將介紹如何使用CGI接收J(rèn)SON。
#!/usr/bin/perl
print "Content-type: application/json\n\n";
use JSON qw( decode_json );
use Data::Dumper;
my $json = do { local $/;};
my $hash = decode_json($json);
print Dumper($hash);
在這個(gè)Perl腳本中,我們使用了JSON模塊來解碼從標(biāo)準(zhǔn)輸入讀取的JSON數(shù)據(jù),并使用Data::Dumper將解碼后的哈希打印出來。在響應(yīng)頭中,我們?cè)O(shè)置Content-type為application/json。
#!/usr/bin/python
import json
import sys
print "Content-type: application/json\n\n"
print json.load(sys.stdin)
在這個(gè)Python腳本中,我們使用json模塊來解析標(biāo)準(zhǔn)輸入的JSON數(shù)據(jù),并直接將解析后的JSON數(shù)據(jù)打印到標(biāo)準(zhǔn)輸出。同樣,我們?cè)O(shè)置響應(yīng)頭為Content-type為application/json。
這兩個(gè)示例展示了如何使用CGI接收J(rèn)SON數(shù)據(jù),無論是Perl還是Python,都可以很容易地解析JSON數(shù)據(jù)并將其用于進(jìn)一步的邏輯處理。