Skip to content

Commit 8c1c71b

Browse files
author
Hevin
committed
Merge branch 'v2-dev'
2 parents 1c816f5 + ed8211d commit 8c1c71b

File tree

4 files changed

+40
-16
lines changed

4 files changed

+40
-16
lines changed

Jiguang.JPush/JPushClient.cs

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -9,10 +9,10 @@ namespace Jiguang.JPush
99
{
1010
public class JPushClient
1111
{
12-
public const string BASE_URL_DEFAULT = "https://api.jpush.cn/v3/push";
13-
public const string BASE_URL_BEIJING = "https://bjapi.push.jiguang.cn/v3/push";
12+
public const string BASE_URL_PUSH_DEFAULT = "https://api.jpush.cn/v3/push";
13+
public const string BASE_URL_PUSH_BEIJING = "https://bjapi.push.jiguang.cn/v3/push";
1414

15-
private string BASE_URL = BASE_URL_DEFAULT;
15+
private string BASE_URL = BASE_URL_PUSH_DEFAULT;
1616

1717
public DeviceClient Device;
1818
public ScheduleClient Schedule;
@@ -45,7 +45,7 @@ public JPushClient(string appKey, string masterSecret)
4545
}
4646

4747
/// <summary>
48-
/// 设置 API 调用地址。
48+
/// 设置 push 功能的 API 调用地址。
4949
/// <para>
5050
/// 如果极光应用分配在北京机房(极光控制台 “应用设置” -> “应用信息” 中可以看到),并且开发者接口调用的服务器也位于北京,则可以调用如下地址:
5151
///

Jiguang.JPush/Jiguang.JPush.csproj

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@
1212
<Copyright>MIT</Copyright>
1313
<PackageLicenseUrl></PackageLicenseUrl>
1414
<PackageProjectUrl>https://github.com/jpush/jpush-api-csharp-client</PackageProjectUrl>
15-
<Version>1.1.1</Version>
15+
<Version>1.1.2</Version>
1616
</PropertyGroup>
1717

1818
<ItemGroup>

Jiguang.JPush/ReportClient.cs

Lines changed: 17 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,20 @@ namespace Jiguang.JPush
1010
{
1111
public class ReportClient
1212
{
13-
private const string BASE_URL = "https://report.jpush.cn/v3/";
13+
public const string BASE_URL_REPORT_DEFAULT = "https://report.jpush.cn/v3";
14+
public const string BASE_URL_REPORT_BEIJING = "https://bjapi.push.jiguang.cn/v3/report";
15+
16+
private string BASE_URL = BASE_URL_REPORT_DEFAULT;
17+
18+
/// <summary>
19+
/// 设置 Report API 的调用地址。
20+
/// <see cref="https://docs.jiguang.cn/jpush/server/push/rest_api_v3_report/"/>
21+
/// </summary>
22+
/// <param name="url"><see cref="BASE_URL_REPORT_DEFAULT"/> or <see cref="BASE_URL_REPORT_BEIJING"/></param>
23+
public void SetBaseURL(string url)
24+
{
25+
BASE_URL = url;
26+
}
1427

1528
/// <summary>
1629
/// <see cref="GetMessageReport(List{string})"/>
@@ -21,7 +34,7 @@ public async Task<HttpResponse> GetMessageReportAsync(List<string> msgIdList)
2134
throw new ArgumentNullException(nameof(msgIdList));
2235

2336
var msgIds = string.Join(",", msgIdList);
24-
var url = BASE_URL + "received?msg_ids=" + msgIds;
37+
var url = BASE_URL + "/received?msg_ids=" + msgIds;
2538
HttpResponseMessage msg = await JPushClient.HttpClient.GetAsync(url).ConfigureAwait(false);
2639
var content = await msg.Content.ReadAsStringAsync().ConfigureAwait(false);
2740
return new HttpResponse(msg.StatusCode, msg.Headers, content);
@@ -89,7 +102,7 @@ public async Task<HttpResponse> GetMessageDetailReportAsync(List<string> msgIdLi
89102
throw new ArgumentNullException(nameof(msgIdList));
90103

91104
var msgIds = string.Join(",", msgIdList);
92-
var url = BASE_URL + "messages?msg_ids=" + msgIds;
105+
var url = BASE_URL + "/messages?msg_ids=" + msgIds;
93106
HttpResponseMessage msg = await JPushClient.HttpClient.GetAsync(url).ConfigureAwait(false);
94107
var content = await msg.Content.ReadAsStringAsync().ConfigureAwait(false);
95108
return new HttpResponse(msg.StatusCode, msg.Headers, content);
@@ -120,7 +133,7 @@ public async Task<HttpResponse> GetUserReportAsync(string timeUnit, string start
120133
if (duration <= 0)
121134
throw new ArgumentOutOfRangeException(nameof(duration));
122135

123-
var url = BASE_URL + "users?time_unit=" + timeUnit + "&start=" + startTime + "&duration=" + duration;
136+
var url = BASE_URL + "/users?time_unit=" + timeUnit + "&start=" + startTime + "&duration=" + duration;
124137
HttpResponseMessage msg = await JPushClient.HttpClient.GetAsync(url).ConfigureAwait(false);
125138
var content = await msg.Content.ReadAsStringAsync().ConfigureAwait(false);
126139
return new HttpResponse(msg.StatusCode, msg.Headers, content);

Jiguang.JPush/ScheduleClient.cs

Lines changed: 18 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,19 @@ namespace Jiguang.JPush
99
{
1010
public class ScheduleClient
1111
{
12-
private const string BASE_URL = "https://api.jpush.cn";
12+
public const string BASE_URL_SCHEDULE_DEFAULT = "https://api.jpush.cn/v3/schedules";
13+
public const string BASE_URL_SCHEDULE_BEIJING = "https://bjapi.push.jiguang.cn/v3/push/schedules";
14+
15+
private string BASE_URL = BASE_URL_SCHEDULE_DEFAULT;
16+
17+
/// <summary>
18+
/// 设置 Schedule API 的调用地址。
19+
/// </summary>
20+
/// <param name="url"><see cref="BASE_URL_SCHEDULE_DEFAULT"/> or <see cref="BASE_URL_SCHEDULE_BEIJING"/></param>
21+
public void SetBaseURL(string url)
22+
{
23+
BASE_URL = url;
24+
}
1325

1426
/// <summary>
1527
/// 创建定时任务。
@@ -23,9 +35,8 @@ public async Task<HttpResponse> CreateScheduleTaskAsync(string json)
2335
if (string.IsNullOrEmpty(json))
2436
throw new ArgumentNullException(nameof(json));
2537

26-
var url = BASE_URL + "/v3/schedules";
2738
HttpContent requestContent = new StringContent(json, Encoding.UTF8);
28-
HttpResponseMessage msg = await JPushClient.HttpClient.PostAsync(url, requestContent).ConfigureAwait(false);
39+
HttpResponseMessage msg = await JPushClient.HttpClient.PostAsync(BASE_URL, requestContent).ConfigureAwait(false);
2940
string responseContent = await msg.Content.ReadAsStringAsync().ConfigureAwait(false);
3041
return new HttpResponse(msg.StatusCode, msg.Headers, responseContent);
3142
}
@@ -124,7 +135,7 @@ public async Task<HttpResponse> GetValidScheduleTasksAsync(int page = 1)
124135
if (page <= 0)
125136
throw new ArgumentNullException(nameof(page));
126137

127-
var url = BASE_URL + "/v3/schedules?page=" + page;
138+
var url = BASE_URL + "?page=" + page;
128139
HttpResponseMessage msg = await JPushClient.HttpClient.GetAsync(url).ConfigureAwait(false);
129140
string responseContent = await msg.Content.ReadAsStringAsync().ConfigureAwait(false);
130141
return new HttpResponse(msg.StatusCode, msg.Headers, responseContent);
@@ -154,7 +165,7 @@ public async Task<HttpResponse> GetScheduleTaskAsync(string scheduleId)
154165
if (string.IsNullOrEmpty(scheduleId))
155166
throw new ArgumentNullException(nameof(scheduleId));
156167

157-
var url = BASE_URL + "/v3/schedules/" + scheduleId;
168+
var url = BASE_URL + $"/{scheduleId}";
158169
HttpResponseMessage msg = await JPushClient.HttpClient.GetAsync(url).ConfigureAwait(false);
159170
string responseContent = await msg.Content.ReadAsStringAsync().ConfigureAwait(false);
160171
return new HttpResponse(msg.StatusCode, msg.Headers, responseContent);
@@ -179,7 +190,7 @@ public async Task<HttpResponse> UpdateScheduleTaskAsync(string scheduleId, strin
179190
if (string.IsNullOrEmpty(json))
180191
throw new ArgumentNullException(nameof(json));
181192

182-
var url = BASE_URL + "/v3/schedules/" + scheduleId;
193+
var url = BASE_URL + $"/{scheduleId}";
183194
HttpContent requestContent = new StringContent(json, Encoding.UTF8);
184195
HttpResponseMessage msg = await JPushClient.HttpClient.PutAsync(url, requestContent).ConfigureAwait(false);
185196
string responseContent = await msg.Content.ReadAsStringAsync().ConfigureAwait(false);
@@ -294,7 +305,7 @@ public async Task<HttpResponse> DeleteScheduleTaskAsync(string scheduleId)
294305
if (string.IsNullOrEmpty(scheduleId))
295306
throw new ArgumentNullException(nameof(scheduleId));
296307

297-
var url = BASE_URL + "/v3/schedules/" + scheduleId;
308+
var url = BASE_URL + $"/{scheduleId}";
298309
HttpResponseMessage msg = await JPushClient.HttpClient.DeleteAsync(url).ConfigureAwait(false);
299310
string responseContent = await msg.Content.ReadAsStringAsync().ConfigureAwait(false);
300311
return new HttpResponse(msg.StatusCode, msg.Headers, responseContent);

0 commit comments

Comments
 (0)