GWT 애플리케이션을 사용하여 도메인 간 요청을 시도하는 동안 Chrome에서이 오류가 발생합니다.GWT를 통한 도메인 간 요청
Origin http://127.0.0.1:8888 is not allowed by Access-Control-Allow-Origin.
나는 GET 요청을 보내기 위해 다음 코드를 시도했다.
import com.google.gwt.core.client.EntryPoint;
import com.google.gwt.http.client.Request;
import com.google.gwt.http.client.RequestBuilder;
import com.google.gwt.http.client.RequestCallback;
import com.google.gwt.http.client.RequestException;
import com.google.gwt.http.client.Response;
import com.google.gwt.user.client.ui.Label;
import com.google.gwt.user.client.ui.RootPanel;
public class Detracker implements EntryPoint {
public void onModuleLoad() {
doGet("http://www.google.com");
}
public static void doGet(String url) {
RequestBuilder builder = new RequestBuilder(RequestBuilder.GET, url);
try {
builder.sendRequest(null, new RequestCallback() {
public void onError(Request request, Throwable exception) {
// Code omitted for clarity
}
@Override
public void onResponseReceived(Request request,
Response response) {
final Label msgLabel = new Label();
msgLabel.setText(response.getText());
RootPanel.get("resultContainer").add(msgLabel);
}
});
} catch (RequestException e) {
// Code omitted for clarity
}
}
}
는이 보안상의 제약 – dldnh
에, 불행하게도, 허용하지 않는다 어떤 트릭/제가 알고하지 않는 것이이 –
사용할 수 있습니다 해킹입니다. 우리는 GWT 앱의 백엔드에서 실행되고 프록시의 역할을하는 작은 서블릿 또는 JSP를 작성했습니다. 그것은 실제 Java를 실행하고 있으므로 원하는대로 GET/POST 매개 변수를 전달하여 응답을 얻고 GWT 클라이언트로 다시 보냅니다. 코드를 공유 할 수 없지만 내 고용주에게 속한 것은 유감입니다. – dldnh