public JsonResult UpdateShareLink() { try { _log.Debug("UpdateShareLink Start"); var tokenId = CommonHelper.GetToken(Request.Form["TokenId"]); UpdateShareLinkModel item = new UpdateShareLinkModel() { item = new UItem() { perms = GetPerms(Convert.ToInt64(Request.Form["Perm"])) }, link_id = CommonHelper.DecodeUrl(Request.Form["LinkId"]), expires_at = CommonHelper.DecodeUrl(Request.Form["ExpiresAt"]), limited_times = string.IsNullOrEmpty(Request.Form["LimitedTimes"]) ? -1 : Convert.ToInt64(Request.Form["LimitedTimes"]), password = string.IsNullOrEmpty(Request.Form["Password"]) ? "" : CommonHelper.DecodeUrl(Request.Form["Password"]), title = CommonHelper.DecodeUrl(Request.Form["Title"]) }; IShareLinkAPIHelper helper = new ShareLinkAPIHelper(); var errorCode = helper.UpdateShareLink(tokenId, item); _log.Debug("UpdateShareLink End"); return(Json(new JsonModel { Success = true, StatusCode = errorCode })); } catch (Exception ex) { _log.Debug($"UpdateShareLink Exception: {ex.Message}"); return(Json(new JsonModel { Success = false, Message = ex.Message })); } }
public void UpdateShareLink() { CreatShareLinkModel item = new CreatShareLinkModel() { item = new CItem() { id = TestData.fileId, type = "file", perm = 7 }, expires_at = "2020-09-30T08:00:00+08:00", limited_times = 10, password = "******", title = TestData.fileName }; var linkId = helper.CreatShareLink(TestData.access_token, item, out long code); UpdateShareLinkModel uitem = new UpdateShareLinkModel() { item = new UItem() { perm = 7 }, link_id = linkId, expires_at = "2020-10-30T08:00:00+08:00", limited_times = 10, password = "******", title = TestData.fileName }; var code2 = helper.UpdateShareLink(TestData.access_token, uitem); Assert.IsNotNull(linkId); Assert.IsNotNull(code2); }
public void UpdateShareLinkModelTest() { UItem uItem = new UItem() { perm = 25 }; var perm = uItem.perm; Assert.IsTrue(perm == 25); UpdateShareLinkModel updateShareLinkModel = new UpdateShareLinkModel() { item = uItem, expires_at = "expires_at", limited_times = 10, link_id = "link_id", password = "******", title = "title", }; var item = updateShareLinkModel.item; var expires_at = updateShareLinkModel.expires_at; var limited_times = updateShareLinkModel.limited_times; var link_id = updateShareLinkModel.link_id; var password = updateShareLinkModel.password; var title = updateShareLinkModel.title; Assert.IsTrue(item == uItem); Assert.IsTrue(limited_times == 10); Assert.IsTrue(expires_at == "expires_at"); Assert.IsTrue(link_id == "link_id"); Assert.IsTrue(password == "password"); Assert.IsTrue(title == "title"); }
/// <summary> /// 修改匿名共享 /// </summary> /// <returns>匿名共享</returns> public long UpdateShareLink(string token, UpdateShareLinkModel model) { try { long errorCode = 0; var handler = new WebRequestHandler(); handler.ServerCertificateValidationCallback = delegate { return(true); }; using (var httpClient = new HttpClient(handler)) { httpClient.DefaultRequestHeaders.Add("Authorization", token); var json = JsonConvert.SerializeObject(model); var content = new StringContent(json, Encoding.UTF8, "application/json"); var res = httpClient.PutAsync($"{Constant.OAuth2Url}/api/shared-link/v1/document/anonymous/{model.link_id}", content).Result; var resStr = res.Content.ReadAsStringAsync().Result; int resCode = (int)res.StatusCode; // 若为错误返回码则抛出异常 if (resCode < 200 || resCode >= 300) { var errModel = JsonConvert.DeserializeObject <ErrorModel>(resStr); _log.Debug($"UpdateShareLink Exception: {errModel.cause}, Code: {errModel.code}"); errorCode = errModel.code; // 时间无效 if (!string.IsNullOrEmpty(errModel.cause) && errModel.cause.Contains("expires") && errModel.code == 400000000) { errorCode = 400001010; } return(errorCode); } if (resCode != 204) { errorCode = resCode; } return(errorCode); } } catch (Exception ex) { _log.Debug($"UpdateShareLink Exception: {ex.Message}"); throw ex; } }