第三方接口,简单说,就是允许其他应用开发者调用该API允许调用的平台资源。
设置了API,就可以将表单新提交的数据推送到自己的平台,或在自己的平台查询表单提交的数据和评论。 目前支持的API如下:
http://api.jsform.com/api/v1/
在开始使用之前,您需要在“账户”中获取API Key/Secret,只有通过这两个参数才能获取API的访问权限。
您每次进行API调用时,都需要将API Key&Secret放到HTTP请求的Header中。例如,使用curl来获得某个表单提交的数据:
curl -u 51470abd078d49c496fda859:vWXVAWXeEQKfLlerFDMD3rsekBQzU5tz --header "Content-Type:application/json" -d "{\"form_id\":\"552b4ffe0cf2ba60b5b6825b\",\"fields\":[\"field1\",\"field5\",\"field6\",\"id\"],\"order_by\":{\"field1\":1}}" --url http://api.jsform.com/api/v1/entry/query
Java
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
BufferedReader br = new BufferedReader(new InputStreamReader((ServletInputStream) request.getInputStream(),"utf-8"));
String line = null;
StringBuilder sb = new StringBuilder();
while ((line = br.readLine()) != null) {
sb.append(line);
}
System.out.println(sb);//将获取到的json字符串输出
}
Java-SpringMVC
//params即为Post过来的json对应的map
@RequestMapping(value="/form/getformlist",method=RequestMethod.POST)
public @ResponseBody void deleteForm(@RequestBody Map params){
}
Node.js
var http = require('http');
var server = http.createServer(function(req,res){
if(req.method=='POST'){ //用Post方法获取json字符串
var items = '';
req.setEncoding('utf8');
req.on('data',function(chunk){
items += chunk;
});
req.on('end',function(){
res.write(items); //打印json字符串
res.end();
});
}
});
server.listen(3000);
Ruby
class LoveController < ApplicationController
def data
str = request.params /*其中str为取到的json字符串*/
render(:text=>str) /*返回打印json字符串*/
end
end
Python
from django.views.decorators.csrf import csrf_exemptfrom
django.http import HttpResponse
@csrf_exempt
def data(request):
str = request.body /*str为得到的json字符串*/
return HttpResponse("%s" % str) /*返回打印json字符串*/
C#
using System;
using System.Collections.Generic;
using System.IO;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
namespace TestWeb
{
public partial class WebForm1
{
protected void Page_Load(object sender, EventArgs e)
{
Stream data = Request.InputStream;
StreamReader sRead = new StreamReader(data);
string content = sRead.ReadToEnd(); /*content为得到的json字符串*/
sRead.Close();
System.Diagnostics.Debug.Write(postContent); /*打印json字符串到控制台*/
}
}
}