所以我在github上搞了一个项目,一切都很花花公子.现在我想创建一个新的分支.
这就是我所做的:
这是问题:在推送到我的遥控器期间,我收到此错误:
Repository ssh://git@github.com/<username>/ProjectColossus.git
funny refname
error: refusing to create funny ref 'workingBranch' remotely
Run Code Online (Sandbox Code Playgroud)
我的远程仓库被称为origin,所以我尝试在stackoverflow上的另一个答案中建议使用该refname,但是我得到了同样的错误.我也尝试在远程推送前的"Target Ref Name:"字段中使用与我的新本地分支相同的名称,但我真的不确定我在这一点上做了什么.我知道有一些我没有得到关于git远程推送的东西,所以一点点解释会非常有用.我对git和版本控制很陌生,但我是一名中级程序员(从1月开始第二年CS).
背景
我们在2016年开发了一个使用WS-Federation进行身份验证的应用程序,用于从内部部署AD获取声明.IT战略的方向已经发生变化,并且正朝着Azure AD(目前托管混合环境)发展.
我们正在使用OpenIDConnect将身份验证从WS-Fed迁移到AAD.让用户登录并使用新方法进行身份验证非常简单 - 正确配置,并发出身份验证挑战,而Robert是您母亲的兄弟.
问题
如果我的术语在这里错了,请纠正我; 我们需要通过默认的JWT从Active Directory中获取一些无法访问的属性(据我所知).因此,我们需要通过HTTP将JWT传递给Graph API,以从Active Directory获取我们想要的属性.
我知道格式正确且经过身份验证的请求可以提取必要的数据,因为我已经设法使用图形浏览器(AAD一个,而不是Microsoft Graph一个)来查看它.
问题
如果我的理解是正确的,我如何从ASP.Net中的HttpContext中提取JWT?如果我已经正确地掌握了所有这些较低级别的HTTP内容,我需要在Graph API请求的请求标头中包含JWT,我应该获得我需要的JSON文档作为响应.
(编辑,为了未来读者的利益:您实际上需要为您尝试访问的特定服务获取新令牌,在本例中为Azure AD.您可以使用代表流程或使用作为应用程序流程).
Request.Headers ["IdToken"]返回null,所以我想知道这里出了什么问题.
代码 这是我们在服务器启动时运行的身份验证配置:
public void Configuration(IAppBuilder app)
{
AntiForgeryConfig.SuppressIdentityHeuristicChecks = true;
//ConfigureAuth(app); //Old WsFed Auth Code
//start the quartz task scheduler
//RCHTaskScheduler.Start();
//Azure AD Configuration
app.SetDefaultSignInAsAuthenticationType(CookieAuthenticationDefaults.AuthenticationType);
app.UseCookieAuthentication(new CookieAuthenticationOptions());
app.UseOpenIdConnectAuthentication(
new OpenIdConnectAuthenticationOptions
{
//sets client ID, authority, and RedirectUri as obtained from web config
ClientId = clientId,
ClientSecret = appKey,
Authority = authority,
RedirectUri = redirectUrl,
//page that users are redirected …Run Code Online (Sandbox Code Playgroud) asp.net-mvc jwt azure-active-directory openid-connect azure-ad-graph-api
所以我正在为学校编写一个简单的服务器 - 客户端程序.客户端发送命令和一些参数,服务器返回一个答案.
服务器将侦听新连接,并为每个新客户端连接创建一个线程.服务器侦听器也是由main启动的独立线程.
服务器端Main等待用户输入,并在收到适当的输入时退出.
就目前而言,服务器侦听器在一个循环中运行
while(true)
{
...
}
Run Code Online (Sandbox Code Playgroud)
因此,当main到达程序的末尾然后退出时,它会杀死所有正在运行的线程吗?或者它会等待他们完成运行?
如果是后一种情况,我可以调用某种方法,如果系统试图退出,它将返回true吗?
请记住,每个组件都是它自己的类的一部分.
所以我试图弄清楚当模板混合时继承是如何工作的.大多数编译器似乎还没有解决这个问题,所以我的语法有点困难.在SkipNode.h中所有奇怪的包括试图让eclipse停止对我大喊大叫.我在尝试在SkipNode.h中声明构造函数时遇到语法错误,所以这里的任何帮助都会很有用.
这是node.h
#ifndef NODE_H_
#define NODE_H_
template<class T>
class Node
{
public:
Node(Node<T>* next, Node<T>* prev, T item);
virtual ~Node();
Node* getPrev() { return prev;};
Node* getNext() { return next;};
Node* getItem() { return item;};
void setItem(T item){Node<T>::item = item;};
void setNext(Node* next){Node<T>::next = next;};
void setPrev(Node* prev){Node<T>::prev = prev;};
private:
Node* next;
Node* prev;
T item;
};
Run Code Online (Sandbox Code Playgroud)
这是SkipNode.h,其中skipnode继承自Node.
#include "Node.h"
#include "Node.cpp"
#include "SkipNode.h"
#include "SkipNode.cpp"
template <class T>
class SkipNode: public Node
{
public:
SkipNode(Node<T>* next, Node<T>* prev, …Run Code Online (Sandbox Code Playgroud) 所以我正在构建一个包含重复活动的活动日历.为了捕捉反复出现的事件,我采用了一种转移方法来存储重复出现的信息.我采用这种方法的方式或原因并不太重要,但是当我在lambdas中运行位移代码时,我得到了一个不支持的异常.
这里有一个明显的原因,为什么我得到一个不支持的异常?
ab = db.Availabilities.Where(s => (((s.day_cycle_bitmask >> (fromDate.AddDays(i).Subtract(s.start_date).Days % s.num_days_in_cycle)) & 1) == 1
|| ((s.eve_cycle_bitmask >> (fromDate.AddDays(i).Subtract(s.start_date).Days % s.num_days_in_cycle)) & 1) == 1
|| ((s.night_cycle_bitmask >> (fromDate.AddDays(i).Subtract(s.start_date).Days % s.num_days_in_cycle)) & 1) == 1
) && s.employee_id_fk == employee.employee_id_pk
).ToList();
Run Code Online (Sandbox Code Playgroud)
编辑 - 通过除法代码添加我的位移,因为该代码肯定适用于TSQL
// ab = d
b.Availabilities.Where(s => (s.night_cycle_bitmask /
// (int)Math.Pow(fromDate.AddDays(i).Subtract(s.start_date).TotalDays % s.num_days_in_cycle, 2) & 1) == 1
// || (s.day_cycle_bitmask / (int)Math.Pow(fromDate.AddDays(i).Subtract(s.start_date).Days % s.num_days_in_cycle, 2) & 1) == 1
// || (s.eve_cycle_bitmask / (int)Math.Pow(fromDate.AddDays(i).Subtract(s.start_date).Days % s.num_days_in_cycle, …Run Code Online (Sandbox Code Playgroud) 我正在尝试使用友元函数重载<<运算符,但由于某种原因它没有看到私有成员变量.任何想法为什么会发生这种情况会非常有帮助.
这是头文件
class Set
{
private:
struct Node
{
int val;
Node* link;
};
Node *cons(int x, Node *p);
Node *list;
public:
Set() {list = NULL;}
bool isEmpty() const;
int size() const;
bool member (int x) const;
bool insert (int x);
bool remove (int x);
void print() const;
const Set operator+(const Set &otherSet)const;
const Set operator*(const Set &otherSet)const;
Node* getSet()const{return list;}
void setList(Node *list);
friend ostream& operator <<(ostream& outputStream, const Set &set);
};
Run Code Online (Sandbox Code Playgroud)
这是函数定义.
ostream& operator <<(ostream& outputStream, const Set …Run Code Online (Sandbox Code Playgroud) 因此,根据这里的twilio文档,我正在尝试将我的开发机设置为能够响应某些Webhook:
https://www.twilio.com/docs/usage/tutorials/how-use-ngrok-windows-and-visual-studio-test-webhooks
我已经安装了ngrok,并启动并运行了隧道,指向Visual Studio中指定的端口。在这种情况下为44336。

但是,如果我访问外部URL,则会得到很长的加载时间,最终出现502错误。访问localhost可以正常工作。
因此,我尝试将ngrok设置为指向8080,但我得到了进一步的发展,但是浏览器中出现以下错误消息仍然没有运气。
第一次尝试隧道时,我可以看到GET /请求显示在ngrok客户端中,但是没有错误。在第二次尝试中,我可以看到502错误:
因此,我有两个问题:如何诊断问题的根源?以及如何设置IIS以接受来自ngrok的连接?
第一个问题是如何从单个光源过渡到使用多个光源,而不使用多个片段着色器。
我的直觉是,每次运行着色器计算都需要光源坐标,也许还需要一些颜色信息,我们可以在循环中运行 n 个光源的计算。
如何将多个灯光传递到着色器程序中?我是否使用一系列制服?我的猜测是传入一组带有每个光源坐标的制服,然后指定有多少个光源,然后设置最大值。
我可以为着色器程序调用 getter 或 setter 方法吗?而不是仅仅操纵全局变量?
我正在使用本教程和 libGDX 实现来学习如何执行此操作: https: //gist.github.com/mattdesl/4653464
所以我试图重载<<运算符.从我可以看到的所有来源,语法是正确的,但eclipse不喜欢它.
我收到了一些错误: Polynomial :: PrivateStruct*Polynomial :: head是私有的
并且: struct Polynomial :: PrivateStruct是私有的.
我想保持这个结构私有,以隐藏实现细节.
std::ostream& operator<<(std::ostream& outputStream, Polynomial& rhs)
{
Polynomial::PrivateStruct *p = rhs.head;
//implementation details
return outputStream;
}
Run Code Online (Sandbox Code Playgroud)
和声明:
friend std::ostream& operator<<(std::ostream& outputStream, const Polynomial& rhs);
Run Code Online (Sandbox Code Playgroud)