我已經使用了成功(我在這裏找到:https://gist.github.com/zikani03/7c82b34fbbc9a6187e9a):下面
//add correct package
import com.mpaw.app.controllers.Apply;
import java.util.HashMap;
import spark.Filter;
import spark.Request;
import spark.Response;
import spark.Spark;
/**
* Really simple helper for enabling CORS in a spark application;
*/
public class CorsFilter /*implements Apply*/{
private final HashMap<String, String> corsHeaders = new HashMap<>();
public CorsFilter() {
corsHeaders.put("Access-Control-Allow-Methods", "GET,PUT,POST,DELETE,OPTIONS");
corsHeaders.put("Access-Control-Allow-Origin", "*");
corsHeaders.put("Access-Control-Allow-Headers", "Content-Type,Authorization,X-Requested-With,Content-Length,Accept,Origin,");
corsHeaders.put("Access-Control-Allow-Credentials", "true");
}
@Override
public void apply() {
Filter filter = new Filter() {
@Override
public void handle(Request request, Response response) throws Exception {
corsHeaders.forEach((key, value) -> {
response.header(key, value);
});
}
};
Spark.after(filter);
}
}
用法:
public static void main(String[] args) {
CorsFilter.apply(); // Call this before mapping thy routes
Spark.get("/hello", (request, response) -> {
return "Hello";
});
}
剛剛嘗試了自己設置'接入控制允許Origin'爲' *'並且工作得很好。你能顯示一些代碼嗎? – Yevgeniy
當然,我在這裏使用示例 https://sparktutorials.github.io/2016/05/01/cors.html 客戶端是否需要更改? –
你可能想試試這個https://stackoverflow.com/a/33736267/2960660 –