使用jquery ajax设置多个请求标头

时间:2016-02-21 13:01:08

标签: javascript jquery ajax

这是一个荒谬的问题,但如何在jquery中设置多个自定义http标头?

这个回答:https://stackoverflow.com/a/14655768/2554598 解释为一个标题做这样:

// Request with custom header
$.ajax({
   url: 'foo/bar',
   headers: [{ 'my-first-header': 'blub'}, { 'my-second-header': 'peng'}]
});

这很有效。然而

@Entity
@Table(name = "links", uniqueConstraints = {
        @UniqueConstraint(columnNames = "link", name = "uk_link")
    })
public class Link {

    private long linkId;
    private String link;
    private String data;
    private String metadata;

    private List<Result> results;

    @Id
    @Column(name="link_id")
    @GeneratedValue(strategy=GenerationType.IDENTITY)
    public long getLinkId() {
        return linkId;
    }

    public void setLinkId(long linkId) {
        this.linkId = linkId;
    }

    public String getLink() {
        return link;
    }

    public void setLink(String link) {
        this.link = link;
    }

    public String getData() {
        return data;
    }

    public void setData(String data) {
        this.data = data;
    }

    public String getMetadata() {
        return metadata;
    }

    public void setMetadata(String metadata) {
        this.metadata = metadata;
    }

    @OneToMany(cascade=CascadeType.ALL, fetch = FetchType.LAZY, mappedBy = "link")
    public List<Result> getResults() {
        return results;
    }

    public void setResults(List<Result> results) {
        this.results = results;
    }

    @Override
    public String toString() {
        return "Link [linkId=" + linkId + ", link=" + link + ", data=" + data + ", metadata=" + metadata + "]";
    }

    public boolean isDataEquals(String data) {
        if (this.data == null) {
            if (data != null)
                return false;
        } else if (!this.data.equals(data))
            return false;
        return true;
    }

    public boolean isMetadataEquals(String metadata) {
        if (this.metadata == null) {
            if (metadata != null)
                return false;
        } else if (!this.metadata.equals(metadata))
            return false;
        return true;
    }
}

这会创建一个奇怪的空头字段,其中包含一个json数组。

1 个答案:

答案 0 :(得分:5)

属性标题是一个对象,所以只需尝试:

headers: { 'my-first-header': 'blub', 'my-second-header': 'peng'}