$ http.get和$ .ajax与'GET'类型有什么区别?

时间:2017-03-10 07:23:38

标签: angularjs http get

我知道有post about this

但是根据我的观察,这两种方法会产生不同的结果。

如果我使用它:

<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<fieldset>
    <legend>Question Options:</legend>
    <div class="field_wrapper form-group">
        <label for="inputEmail" class="col-md-4 control-label">1</label>
        <div class="col-md-6">
            <input id="inputEmail" type="text" name="field_name[]" value=""/>
            <a href="javascript:void(0);" class="add_button" title="Add field"><img src="add-icon.png"/></a>
        </div>
    </div>
</fieldset>

它返回结果。

但是,如果我这样写:

$.ajax({
          url: myDataURL,
          type: 'GET'
      });

它会抛出错误:

$http.get(myDataURL)

我错过了什么吗?

P.S:

我的数据网址来自Jetty Geoserver。

2 个答案:

答案 0 :(得分:1)

CORS表示跨源资源共享。您必须配置发送$http.get请求的Web服务器,以允许跨域请求。您将在HTTP标头Access-Control-Allow-Origin中看到。

如果您的目标服务器支持CORS,您将收到此响应:

Access-Control-Allow-Origin: *

答案 1 :(得分:0)

您需要设置标题:

var req = { method: 'POST', 
            url: 'http://example.com', 
            headers: {'Content-Type': undefined },  
            data: { test: 'test' }
          }