小编Mic*_*ely的帖子

HttpClient一直收到错误的请求

当我使用C#创建客户端时,我很难从REST api解析我的错误请求响应.我使用Fiddler 2测试了REST api并在那里执行它,但是当我以编程方式创建相同的东西时,我得到400响应.这是我的Fiddler作曲家测试:

网址:

https://<third-party-rest-client>/api/v2/job
Run Code Online (Sandbox Code Playgroud)

这是我的标题

User-Agent: Fiddler
Content-Type: application/json
Accept: application/json
icSessionId: PomCSBCVU4VgXCJ5    
Content-Length: 123
Run Code Online (Sandbox Code Playgroud)

这是我正在发送POST请求的正文

{
"@type": "job",
"taskId":"0000G20G000000000002",
"taskName":"TestReplication",
"taskType":"DRS",
"callbackURL":""
}
Run Code Online (Sandbox Code Playgroud)

这个POST返回200响应和响应体,这是完美的,但当我尝试使用此代码在C#中模拟相同的事情时:

public JobResponse RunJob(JobRequest jobRequest)
    {
        try
        {
            client = new HttpClient();
            client.BaseAddress = new Uri(loggedUser.serverUrl + "/");
            client.DefaultRequestHeaders.Clear();
            client.DefaultRequestHeaders.Accept.Add(new System.Net.Http.Headers.MediaTypeWithQualityHeaderValue("application/json"));
            client.DefaultRequestHeaders.TryAddWithoutValidation("icSessionId", icSessionId);

            string message = JsonConvert.SerializeObject(jobRequest);
            message = message.Insert(1, "\"@type\": \"job\",");
            Console.WriteLine(message);
            var response = client.PostAsJsonAsync("api/v2/job", message).Result;
            if (response.IsSuccessStatusCode)
            {
                return response.Content.ReadAsAsync<JobResponse>().Result;
            }
            else
            {
                var result = response.Content.ReadAsStringAsync().Result;
                Console.WriteLine(result);
            }
        }
        catch …
Run Code Online (Sandbox Code Playgroud)

.net c#

10
推荐指数
2
解决办法
2万
查看次数

将父指令属性传递给子指令属性

我正在为客户可以使用的库创建指令.我需要让客户为指令创建自己的模板,并将该模板的绝对url值传递给我的指令.我的一个指令将在其中包含另一个自定义指令,并且它的模板将根据父指令的一个属性的值来计算.这是一个例子:

<parent-dir menu-template="this.html" item-template="that.html"></parent-dir>
Run Code Online (Sandbox Code Playgroud)

我有一个这个指令的模板,如下所示:

<ul style="list: none" ng-repeat="item in menu">
    <child-dir template="{{itemTemplate}}"></child-dir>
</ul>
Run Code Online (Sandbox Code Playgroud)

我的指令看起来像这样:

angular.module('myApp')
.directive('parentDir', function () {        
    return {
        restrict: 'E',
        scope: {
            menuTemplate: '@',
            itemTemplate: '@',
            menuType: '@',
            menuName: '@',
            menuId: '@',
        },
        templateUrl: function (element, attrs) {
            alert('Scope: ' + attrs.menuTemplate);
            return attrs.menuTemplate;
        },
        controller: function ($scope, $element, $attrs) {
            $scope.defaultSubmit = false;
            alert('Menu: '+$attrs.menuTemplate);
            alert('Item: ' + $attrs.itemTemplate);
            $scope.itemTemplate = $attrs.itemTemplate;
            if ($attrs.$attr.hasOwnProperty('defaultSubmit')) {
                alert('It does');
                $scope.defaultSubmit = true;   
            }               
        }
    };
})
.directive('childDir', …
Run Code Online (Sandbox Code Playgroud)

angularjs angularjs-directive angularjs-scope

5
推荐指数
1
解决办法
1740
查看次数

带有一个输入参数和多个输出参数的 Oracle 运行过程

我刚开始使用 Oracle,在开始向应用程序添加内容之前,我使用 SQL Developer 进行测试,但我遇到了问题,因为 Oracle 的行为与我使用过的所有其他数据库引擎都不同。

我创建了一个虚拟表:

CREATE TABLE "ROOT"."EMPLOYEES" 
(   "ID" NUMBER NOT NULL ENABLE, 
"FIRSTNAME" VARCHAR2(30 BYTE) NOT NULL ENABLE, 
"LASTNAME" VARCHAR2(30 BYTE) NOT NULL ENABLE, 
"EMAIL" VARCHAR2(40 BYTE) NOT NULL ENABLE, 
 CONSTRAINT "EMPLOYEES_PK" PRIMARY KEY ("ID")
)
Run Code Online (Sandbox Code Playgroud)

然后我创建了一个程序:

 create or replace PROCEDURE get_employee
(
  emp_id IN NUMBER,
  m_FirstName OUT Varchar2,
  m_LastName OUT Varchar2,
  m_Email OUT Varchar2
)
AS
BEGIN
SELECT 
   FirstName
   ,LastName
   ,Email
INTO
   m_FirstName,
   m_LastName,
   m_Email
FROM EMPLOYEES
WHERE
  ID = emp_id;
END get_employee;
Run Code Online (Sandbox Code Playgroud)

问题是当我尝试运行该过程时出现编译错误: …

oracle plsql stored-procedures

3
推荐指数
1
解决办法
1万
查看次数