每次Breeze API调用发送一条信息

时间:2016-03-14 13:36:44

标签: javascript asp.net-web-api breeze

我希望在从 Auth0 进行身份验证后,通过每个Breeze API调用发送一条信息。例如:我将 BreezeController 名称中的此终点作为任务(带参数,Id),它将拉出该Id引用的所有任务。现在我希望默认情况下通过这些API调用发送一些信息,例如,我可能希望在当前的API调用中发送名称,位置,纬度,经度而不提及它们即任务,以便我可以在终点(任务,服务器端)检索它们。

或者采取这种方式,我可能希望默认情况下每次调用都发送 ID ,即终点可能没有Id作为参数但是终点能够通过某些人检索发送的id机制。

我不希望他们以这种方式发送:

EntityQuery.from('Tasks').withParameters({ Latitude: someLatitude }); 

有什么方法可以实现这个目标吗?我希望我已经说清楚了。

1 个答案:

答案 0 :(得分:0)

好的,伙计们,我自己找到了答案。我需要在每次微风呼叫时发送请求标题。

所以我使用以下方法在客户端设置标题:

var ajaxAdapter = breeze.config.getAdapterInstance('ajax');
ajaxAdapter.defaultSettings = { headers: { "userId": userId} }; //where userId is some string

然后在ApiController中,我通过调用

来检索此标头
IEnumerable<string> header;
var userId = string.Empty;
if (Request.Headers.TryGetValues("userId", out header))
    userId= header.FirstOrDefault();

谢谢大家